Methods and systems for automatically generating advertisements

ABSTRACT

A system and method for generating advertisement automatically are provided. The system may comprise at least one computer-readable storage medium including a set of instructions; at least one processor in communication with the at least one computer-readable storage medium, wherein when executing the set of instructions, the at least one processor is configured to cause the system to generate a first plurality of ads, the first plurality of ads including a first plurality of advertisement elements and a first plurality of information components: transmit, via a network, the first plurality of ads to a first group of user terminals; determine at least one of a click-through rate, a number of impressions, or a conversion rate for the first plurality of ads; and analyze the at least one of the click-through rate, the number of impressions, or the conversion rate of the first plurality of ads.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. Ser. No. 16/214,273 filed onDec. 10, 2018, which is a continuation of U.S. Ser. No. 15/741,268 (nowU.S. Pat. No. 10,192,236) filed on Dec. 31, 2017, which is a U.S.national stage of International Application No. PCT/CN2017/088473, filedon Jun. 15, 2017, which claims priority of Chinese Patent ApplicationNo. 201610482221.6 filed on Jun. 23, 2016, Chinese Application No.201610482162.2 filed on Jun. 23, 2016, Chinese Application No.201610485383.5 filed on Jun. 23, 2016, and Chinese Application No.201610482164.1 filed on Jun. 23, 2016, the entire contents of each ofwhich are hereby incorporated by reference.

TECHNICAL FIELD

The present disclosure generally relates to methods and systems forproviding information for an online advertisement service, and inparticular, to methods and systems for generating one or moreadvertisements and dispatching the one or more advertisements to one ormore users.

BACKGROUND

An advertisement, such an internet advertisement, may include some imageand background related to a product or service. It is desirable toprovide systems and method for automatically generating advertisementsand dispatching the advertisements to the end users.

SUMMARY

In one aspect of the present disclosure, a system is provided. Thesystem may include at least one computer-readable storage mediumincluding a set of instructions and at least one processor incommunication with the at least one computer-readable storage medium.When executing the set of instructions, the at least one processor maybe configured to cause the system to: generate a first plurality of ads,the first plurality of ads including a first plurality of advertisementelements and a first plurality of information components; transmit, viaa network, the first plurality of ads to a first group of userterminals; determine at least one of a click-through rate, a number ofimpressions, or a conversion rate for the first plurality of ads; andanalyze the at least one of the click-through rate, the number ofimpressions, or the conversion rate of the first plurality of ads.

In some embodiments, the at least one processor may be furtherconfigured to cause the system to generate a second plurality of adsbased, at least in part, on a result of the analysis of the at least oneof the click-through rate, the number of impressions, or the conversionrate of the first plurality of ads.

In some embodiments, to generate the first plurality of ads, the atleast one processor may be further configured to cause the system to:obtain the first plurality of advertisement elements; and generate atleast one of the first plurality of ads according to two of the obtainedfirst plurality of advertisement elements.

In some embodiments, to obtain the first plurality of advertisementelements, the at least one processor may be further configured to: causethe system to segment one or more pre-existing ads; and obtain at leastone of the first plurality of advertisement elements based on thesegmentation of the one or more pre-existing ads.

In some embodiments, the plurality of information components include aplurality of images, and the at least one processor may be furtherconfigured to cause the system to: obtain a number of impressions of thefirst plurality of ads; determine, for each of the first plurality ofadvertisement elements, a click-through rate; determine, for each of thefirst plurality of images, a click-through rate; and determine a numberof impressions of at least one of the first plurality of images based onclick-through rates of the first plurality of advertisement elements,click-through rates of the first plurality of images, and the number ofimpressions of the first plurality of ads.

In some embodiments, to determine the number of impressions of the atleast one of the plurality of images, the at least one processor may befurther configured to cause the system to: determine a weight of the atleast one of the first plurality of images, the weight being a ratio ofa click-through rate of the at least one of the first plurality ofimages to a click-through rate of an advertisement element including theat least one of the first plurality of images; determine a total weightof the first plurality of images, the total weight being a sum ofweights of the first plurality of images; and determine the number ofimpressions of the at least one of the first plurality of images basedon the weight of the at least one of the first plurality of images andthe total weight of the first plurality of images.

In some embodiments, the determining the at least one of theclick-through rate, the number of impressions, or the conversion rate ofthe first plurality of ads may include: determining the at least one ofthe click-through rate, the number of impressions, or the conversionrate for of the first plurality of ads being displayed within apre-determined time period.

In some embodiments, to analyze the at least one of the click-throughrate, the number of impressions, or the conversion rate of the firstplurality of ads, the at least one processor may be further configuredto cause the system to: determine a number of clicks of each of thefirst plurality of ads; determine a number of clicks of each of thefirst plurality of information components; determine an average numberof clicks of the first plurality of information components; determinewhether the average number of clicks of the first plurality ofinformation components; and in response to the determination the averagenumber of clicks is greater than a threshold, analyze the number ofclicks of each of the first plurality of ads and the number of clicks ofeach of the first plurality of information components to obtain ananalysis result.

In some embodiments, the analysis result may include at least one of: aranking of the first plurality of ads or an analysis of the firstplurality of information components. In some embodiments, the thresholdmay be 300.

In some embodiments, to analyze the at least one of the click-throughrate, the number of impressions, or the conversion rate of the firstplurality of ads, the at least one processor may be further configuredto cause the system to: determine at least one of a click-through rate,a number of impressions or a conversion rate of the first plurality ofinformation components according to the at least one of theclick-through rate, the number of impressions or the conversion rate ofthe first plurality of ads; and rank the first plurality of ads or thefirst plurality of information components according to the at least oneof the click-through rate, the number of impressions or the conversionrate of the first plurality of ads and the at least one of theclick-through rate, the number of impressions or the conversion rate ofthe first plurality of information components.

In some embodiments, the at least one processor may be furtherconfigured to cause the system to: assign a weight to the at least oneof the click-through rate, the number of impressions or the conversionrate of the first plurality of ads to generate at least one of aweighted click-through rate, a weighted number of impressions, or aweighted conversion rate of the first plurality of ads; determine a sumof the at least one of the weighted click-through rate, the weightednumber of impressions, or the weighted conversion rate; and rank thefirst plurality of ads according to the sum of the at least one of theweighted click-through rate, the weighted number of impressions, or theweighted conversion rate.

In some embodiments, the at least one processor may be furtherconfigured to cause the system to: assign a weight to the at least oneof the click-through rate, the number of impressions or the conversionrate of the first plurality of information components to generate atleast one of a weighted click-through rate, a weighted number ofimpressions, or a weighted conversion rate of the first plurality ofinformation components; determine a sum of the at least one of theweighted click-through rate, the weighted number of impressions, or theweighted conversion rate of the first plurality of informationcomponents; and rank the plurality of information components accordingto the sum of the at least one of the weighted click-through rate, theweighted number of impressions, or the weighted conversion rate of thefirst plurality of information components.

In some embodiments, the plurality of information components may includeat least one of an image, a text, or a video.

In some embodiments, to analyze the at least one of the click-throughrate, the number of impressions, or the conversion rate of the firstplurality of ads, the at least one processor may be further configuredto cause the system to: determine a click-through rate of the firstplurality of information components according to the click-through rateof the first plurality of ads; determine a label of at least one of thefirst plurality of information components; and determine a click-throughrate of the label according to the click-through rate of the firstplurality of information components.

In some embodiments, to determine the label of the at least one of thefirst plurality of information components, the at least one processormay be further configured to cause the system to: acquire an identifierof the at least one of the first plurality of information components;determine a physical attribute of the at least one of the firstplurality of information components according to the identifier;determine a position of the at least one of the first plurality ofinformation components in an ad; and, determine the label of the atleast one of the first plurality of information components based on thephysical attribute and the position.

In some embodiments, the physical attribute of the information componentmay include an area ratio of the at least one of the first plurality ofinformation components in the ad, a color of the at least one of thefirst plurality of information components, a number of models includedin the at least one of the first plurality of information components, arace of a model, a gender of a model included in the at least one of thefirst plurality of information components, or a package of a productincluded in the at least one of the first plurality of informationcomponents.

In some embodiments, the at least one processor may be furtherconfigured to cause the system to: determine a label in an advertisementelement level; and, determine a click-through of the label in theadvertisement element level.

In some embodiments, wherein to determine the label in the advertisementelement level, the at least one processor may be further configured tocause the system to: generate a first label related to physicalattributes of an advertisement element; and generate a second labelrelated to cultural attributes of the advertisement element.

In another aspect of the present disclosure, a system for generating oneor more ads is provided. The system may include at least onecomputer-readable storage medium including a set of instructions; atleast one processor in communication with the at least onecomputer-readable storage medium. When executing the set ofinstructions, the at least one processor may be configured to cause thesystem to: access a database including a plurality of advertisementelements, each of the plurality of advertisement elements including atleast one information component; access a plurality of advertisementtemplates, each of the plurality of advertisement templates including atleast one advertisement region, the at least advertisement correspondingto an advertisement element; receive an ad generation request forgenerating one or more ads; obtain one or more advertisement templatesfor the one or more ads to be generated according to the plurality ofadvertisement templates and the ad generation request; insert one ormore information components into the one or more advertisement template;and, rate the one or more ads based on the one or more advertisementtemplates inserted with the one or more information components.

In some embodiments, the at least one processor is further configured tocause the system to: determine one or more size groups based on aplurality of advertisement slots; obtain one or more layout templatesbased on the one or more size groups; obtain a plurality ofadvertisement elements according to the one or more layout templates;and, determine the one or more advertisement templates based on theplurality of advertisement elements and the one or more layouttemplates.

In some embodiments, the ad generation request includes an image as aninformation component to be generated, and the at least one processormay be further configured to cause the system to: determine one or moresize scaling ratios of the image; determine one or more spatialcompression ratios of the image; and, generate one or more processedimages for the image as the information component to be generatedaccording to the determined one or more size scaling ratios and thedetermined one or more spatial compression ratios.

In yet another aspect of the present disclosure, a system fordispatching advertisement is provided. The system may include at leastone computer-readable storage medium including a set of instructions; atleast one processor in communication with the at least onecomputer-readable storage medium. When executing the set ofinstructions, the at least one processor is configured to cause thesystem to: receive, via a network, a request for displaying an ad at auser terminal, the request including ad information, the ad informationincluding at least one of: keyword information, size information of oneor more advertisement slots on a web page, and a trigger condition fordisplaying an ad at the user terminal, wherein the keyword informationincludes information related to one or more keywords entered at the userterminal; obtain an ad, the ad being generated in response to therequest; and, dispatch, via the network, the generated ad to the userterminal.

In some embodiments, the request may include the keyword information,and the keyword information may include information related to one ormore keywords entered at the user terminal, and to obtain the adgenerated to in response to the request, the at least one processor maybe configured to cause the system to: determine one or more labels basedon the keywords; determine a plurality of candidate ads based on the onone or more labels; determine a matching probability of at least one ofthe plurality of candidate ads being associated with the one or morelabels; and, determine the ad among the plurality of candidate ads basedon the matching probability.

In some embodiments, the request may include the size information of oneor more advertisement slots on the web page, and to obtain the adgenerated to in response to the request, the at least one processor maybe configured to cause the system to: determine an aspect ratio for eachof the one or more advertisement slots; obtain a plurality of layouttemplates; determine an aspect ratio for each of the plurality of layouttemplates; for the each of the plurality layout template, determine asimilarity ratio between the layout template and the one or moreadvertisement slots according to the aspect ratios of the one or moreadvertisement slots and the aspect ratios of the plurality layouttemplates; determine a target layout template based on the similarityratios; and generate the ad based on the determined target layouttemplate.

In some embodiments, the request may include a trigger condition, and toobtain the ad generated to in response to the request, the at least oneprocessor may be configured to cause the system to determine the adbased on the trigger condition and a relationship between anadvertisement design of the ad and the trigger condition.

In some embodiments, the relationship between the advertisement designof the ad and the trigger condition may be determined by a process,including: obtaining an advertising design; decomposing theadvertisement design into a plurality of advertisement elements;determining one or more images for each of the advertisement elements;and determining the relationship according to the trigger condition forthe one or more images.

In yet another aspect of the present disclosure, a system for analyzingadvertisement performance is provided. The system may include at leastone computer-readable storage medium including a set of instructions; atleast one processor in communication with the at least onecomputer-readable storage medium. When executing the set ofinstructions, the at least one processor is configured to cause thesystem to: determine at least one of: a click-through rate of aplurality of ads, a number of impressions of the plurality of ads, or aconversion rate of the plurality of ads; and analyze the at least oneof: the click-through rate of the plurality of ads, the number ofimpressions of the plurality of ads, or the conversion rate of theplurality of ads.

In some embodiments, the plurality of ads may include a plurality ofinformation components, and the at least one processor may be furtherconfigured to cause the system to: determine a click-through rate ofeach of the plurality of information components according to theclick-through rate of the plurality of ads; determine a label of atleast one of the plurality of information components; and, determine aclick-through rate of the label of the at least one of the plurality ofinformation components according to the click-through rate of each ofthe plurality of information components.

In some embodiments, one of the plurality of ads may include aninformation component, and the at least one processor may be furtherconfigured to cause the system to: determine a physical attribute of theinformation component; determine a position of the information componentin the one of the plurality of the plurality of ads; and, generate alabel of the information component based on the physical attribute andthe position of the information component.

In yet another aspect of the present disclosure, a method implemented ona computing device having at least one processor, at least onecomputer-readable storage medium, and a communication platform connectedto a network is provided. The method may include: generating a firstplurality of ads, the first plurality of ads including a first pluralityof advertisement elements and a first plurality of informationcomponents; transmitting, via a network, the first plurality of ads to afirst group of user terminals; determining at least one of aclick-through rate, a number of impressions, or a conversion rate forthe first plurality of ads; and analyzing the at least one of theclick-through rate, the number of impressions, or the conversion rate ofthe first plurality of ads.

In some embodiments, the method may further include generating a secondplurality of ads based, at least in part, on a result of the analysis ofthe at least one of the click-through rate, the number of impressions,or the conversion rate of the first plurality of ads.

In some embodiments, the generating the first plurality of ads mayinclude: obtaining the first plurality of advertisement elements; andgenerating at least one of the first plurality of ads according to twoof the obtained first plurality of advertisement elements.

In some embodiments, the obtaining the first plurality of advertisementelements may include: segmenting one or more pre-existing ads; andobtaining at least one of the first plurality of advertisement elementsbased on the segmentation of the one or more pre-existing ads.

In some embodiments, the plurality of information components includes aplurality of images, and the method may further include: obtaining anumber of impressions of the first plurality of ads; determining, foreach of the first plurality of advertisement elements, a click-throughrate; determining, for each of the first plurality of images, aclick-through rate; and determining a number of impressions of at leastone of the first plurality of images based on click-through rates of thefirst plurality of advertisement elements, click-through rates of thefirst plurality of images, and the number of impressions of the firstplurality of ads.

In some embodiments, the determining the number of impressions of the atleast one of the plurality of images may include: determining a weightof the at least one of the first plurality of images, the weight being aratio of a click-through rate of the at least one of the first pluralityof images to a click-through rate of an advertisement element includingthe at least one of the first plurality of images; determining a totalweight of the first plurality of images, the total weight being a sum ofweights of the first plurality of images; and, determining the number ofimpressions of the at least one of the first plurality of images basedon the weight of the at least one of the first plurality of images andthe total weight of the first plurality of images.

In some embodiments, the determining the at least one of theclick-through rate, the number of impressions, or the conversion ratefor of the first plurality of ads may include determining the at leastone of the click-through rate, the number of impressions, or theconversion rate for of the first plurality of ads being displayed withina pre-determined time period.

In some embodiments, the analyzing the at least one of the click-throughrate, the number of impressions, or the conversion rate of the firstplurality of ads, may include: determining a number of clicks of each ofthe first plurality of ads; determining a number of clicks of each ofthe first plurality of information components; determining an averagenumber of clicks of the first plurality of information components;determining whether the average number of clicks of the first pluralityof information components; and in response to the determination theaverage number of clicks is greater than a threshold, analyzing thenumber of clicks of each of the first plurality of ads and the number ofclicks of each of the first plurality of information components toobtain an analysis result.

In some embodiments, the analysis result may include at least one of aranking of the first plurality of ads or an analysis of the firstplurality of information components. In some embodiments, the thresholdis 300.

In some embodiments, the analyzing the at least one of the click-throughrate, the number of impressions, or the conversion rate of the firstplurality of ads, may include: determining at least one of aclick-through rate, a number of impressions or a conversion rate of thefirst plurality of information components according to the at least oneof the click-through rate, the number of impressions or the conversionrate of the first plurality of ads; and ranking the first plurality ofads or the first plurality of information components according to the atleast one of the click-through rate, the number of impressions or theconversion rate of the first plurality of ads and the at least one ofthe click-through rate, the number of impressions or the conversion rateof the first plurality of information components.

In some embodiments, the method may further include: assigning a weightto the at least one of the click-through rate, the number of impressionsor the conversion rate of the first plurality of ads to generate atleast one of a weighted click-through rate, a weighted number ofimpressions, or a weighted conversion rate of the first plurality ofads; determining a sum of the at least one of the weighted click-throughrate, the weighted number of impressions, or the weighted conversionrate; and ranking the first plurality of ads according to the sum of theat least one of the weighted click-through rate, the weighted number ofimpressions, or the weighted conversion rate.

In some embodiments, the method may further include: assigning a weightto the at least one of the click-through rate, the number of impressionsor the conversion rate of the first plurality of information componentsto generate at least one of a weighted click-through rate, a weightednumber of impressions, or a weighted conversion rate of the firstplurality of information components; determining a sum of the at leastone of the weighted click-through rate, the weighted number ofimpressions, or the weighted conversion rate of the first plurality ofinformation components; and ranking the plurality of informationcomponents according to the sum of the at least one of the weightedclick-through rate, the weighted number of impressions, or the weightedconversion rate of the first plurality of information components.

In some embodiments, the plurality of information components may includeat least one of an image, a text, or a video.

In some embodiments, the analyzing the at least one of the click-throughrate, the number of impressions, or the conversion rate of the firstplurality of ads, may include: determining a click-through rate of thefirst plurality of information components according to the click-throughrate of the first plurality of ads; determining a label of at least oneof the first plurality of information components; and determining aclick-through rate of the label according to the click-through rate ofthe first plurality of information components.

In some embodiments, the determining the label of the at least one ofthe first plurality of information components may include: acquiring anidentifier of the at least one of the first plurality of informationcomponents; determining a physical attribute of the at least one of thefirst plurality of information components according to the identifierdetermining a position of the at least one of the first plurality ofinformation components in an ad; and determining the label of the atleast one of the first plurality of information components based on thephysical attribute and the position.

In some embodiments, the physical attribute of the information componentmay include an area ratio of the at least one of the first plurality ofinformation components in the ad, a color of the at least one of thefirst plurality of information components, a number of models includedin the at least one of the first plurality of information components, arace of a model, a gender of a model included in the at least one of thefirst plurality of information components, or a package of a productincluded in the at least one of the first plurality of informationcomponents.

In some embodiments, the method may further include: determining thelabel in an advertisement element level; and determining a click-throughof the label in the advertisement element level.

In some embodiments, the determining the label in the advertisementelement level may include: generating a first label related to physicalattributes of an advertisement element; and generating a second labelrelated to cultural attributes of the advertisement element.

In yet another aspect of the present disclosure, a method implemented ona computing device having at least one processor, at least onecomputer-readable storage medium, and a communication platform connectedto a network is provided. The method may include: accessing a databaseincluding a plurality of advertisement elements, each of the pluralityof advertisement elements including at least one information component;accessing a plurality of advertisement templates, each of the pluralityof advertisement templates including at least one advertisement region,the at least advertisement corresponding to an advertisement element;receiving an ad generation request for generating one or more ads;obtaining one or more advertisement templates for the one or more ads tobe generated according to the plurality of advertisement templates andthe ad generation request; inserting one or more information componentsinto the one or more advertisement template; and generating the one ormore ads based on the one or more advertisement templates inserted withthe one or more information components.

In some embodiments, the method may further include: determining one ormore size groups based on a plurality of advertisement slots; obtainingone or more layout templates based on the one or more size groups;obtaining a plurality of advertisement elements according to the one ormore layout templates; and determining the one or more advertisementtemplates based on the plurality of advertisement elements and the oneor more layout templates.

In some embodiments, the ad generation request includes an image as aninformation component to be generated, and the method may furtherinclude: determining one or more size scaling ratios of the image;determining one or more spatial compression ratios of the image; andgenerating one or more processed images for the image as the informationcomponent to be generated according to the determined one or more sizescaling ratios and the determined one or more spatial compressionratios.

In yet another aspect of the present disclosure, a method implemented ona computing device having at least one processor, at least onecomputer-readable storage medium, and a communication platform connectedto a network is provided. The method may include: receiving a requestfor displaying an ad at a user terminal, the request including adinformation, the ad information including at least one of: keywordinformation, size information of one or more advertisement slots on aweb page, and a trigger condition for displaying an ad at the userterminal, wherein the keyword information includes information relatedto one or more keywords entered at the user terminal: obtaining an ad,the ad being generated in response to the request: and dispatching thegenerated ad to the user terminal.

In some embodiments, the method may further include: determining one ormore labels based on the keywords; determining a plurality of candidateads based on the on one or more labels; determining a matchingprobability of at least one of the plurality of candidate ads beingassociated with the one or more labels; and determining the ad among theplurality of candidate ads based on the matching probability.

In some embodiments, the request may include the size information of oneor more advertisement slots on the web page, and the process may furtherinclude: determining an aspect ratio for each of the one or moreadvertisement slots; obtaining a plurality of layout templates;determining an aspect ratio for each of the plurality of layouttemplates; for the each of the plurality layout template, determining asimilarity ratio between the layout template and the one or moreadvertisement slots according to the aspect ratios of the one or moreadvertisement slots and the aspect ratios of the plurality layouttemplates; determining a target layout template based on the similarityratios; and generating the ad based on the determined target layouttemplate.

In some embodiments, the request includes a trigger condition, and themethod may further include determining the ad based on the triggercondition and a relationship between an advertisement design of the adand the trigger condition.

In some embodiments, the relationship between the advertisement designof the ad and the trigger condition is determined by a process, themethod may further include: obtaining an advertising design; decomposingthe advertisement design into a plurality of advertisement elements;determining one or more images for each of the advertisement elements;and determining the relationship according to the trigger condition forthe one or more images.

In yet another aspect of the present disclosure, a method implemented ona computing device having at least one processor, at least onecomputer-readable storage medium, and a communication platform connectedto a network is provided. The method may include: determining at leastone of: a click-through rate of a plurality of ads, a number ofimpressions of the plurality of ads, or a conversion rate of theplurality of ads; and analyzing the at least one of: the click-throughrate of the plurality of ads, the number of impressions of the pluralityof ads, or the conversion rate of the plurality of ads.

In some embodiments, the plurality of ads may include a plurality ofinformation components, and the method may further include: determininga click-through rate of each of the plurality of information componentsaccording to the click-through rate of the plurality of ads; determininga label of at least one of the plurality of information components: anddetermining a click-through rate of the label of the at least one of theplurality of information components according to the click-through rateof each of the plurality of information components.

In some embodiments, one of the plurality of ads may include aninformation component, and the method may further include: determining aphysical attribute of the information component determining a positionof the information component in the one of the plurality of theplurality of ads; and generating a label of the information componentbased on the physical attribute and the position of the informationcomponent.

In yet another aspect of the present disclosure, a non-transitorycomputer readable medium embodying a computer program product isprovided. The computer program product may include instructionsconfigured to cause a computing device to: generate a first plurality ofads, the first plurality of ads including a first plurality ofadvertisement elements and a first plurality of information components;transmit, via a network, the first plurality of ads to a first group ofuser terminals; determine at least one of a click-through rate, a numberof impressions, or a conversion rate for the first plurality of ads; andanalyze the at least one of the click-through rate, the number ofimpressions, or the conversion rate of the first plurality of ads.

In yet another aspect of the present disclosure, a non-transitorycomputer readable medium embodying a computer program product isprovided. The computer program product may include instructionsconfigured to cause a computing device to: access a database including aplurality of advertisement elements, each of the plurality ofadvertisement elements including at least one information component;access a plurality of advertisement templates, each of the plurality ofadvertisement templates including at least one advertisement region, theat least advertisement corresponding to an advertisement element;receive an ad generation request for generating one or more ads; obtainone or more advertisement templates for the one or more ads to begenerated according to the plurality of advertisement templates and thead generation request; insert one or more information components intothe one or more advertisement template; and generate the one or more adsbased on the one or more advertisement templates inserted with the oneor more information components.

In yet another aspect of the present disclosure, a non-transitorycomputer readable medium embodying a computer program product isprovided. The computer program product may include instructionsconfigured to cause a computing device to: receive a request fordisplaying an ad at a user terminal, the request including adinformation, the ad information including at least one of: keywordinformation, size information of one or more advertisement slots on aweb page, and a trigger condition for displaying an ad at the userterminal, wherein the keyword information includes information relatedto one or more keywords entered at the user terminal; obtain an ad, thead being generated in response to the request: and dispatching thegenerated ad to the user terminal.

In yet another aspect of the present disclosure, a non-transitorycomputer readable medium embodying a computer program product isprovided, the computer program product may include instructionsconfigured to cause a computing device to: determine at least one of: aclick-through rate of a plurality of ads, a number of impressions of theplurality of ads, or a conversion rate of the plurality of ads; andanalyze the at least one of: the click-through rate of the plurality ofads, the number of impressions of the plurality of ads, or theconversion rate of the plurality of ads.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is further described in terms of exemplaryembodiments. These exemplary embodiments are described in detail withreference to the drawings. These embodiments are non-limiting exemplaryembodiments, in which like reference numerals represent similarstructures throughout the several views of the drawings, and wherein:

FIG. 1 illustrates an exemplary network environment of providing anonline advertisement service according to some embodiments;

FIG. 2 illustrates an exemplary computing device according to someembodiments of the present disclosure;

FIG. 3 illustrates an exemplary mobile device according to someembodiments of the present disclosure;

FIG. 4 illustrates an exemplary processing engine according to someembodiments of the present disclosure;

FIG. 5 is a flowchart illustrating an exemplary process for processingone or more ads according to some embodiments of the present disclosure;

FIG. 6 is a flowchart illustrating an exemplary process for generatingone or more ads according to some embodiments of the present disclosure;

FIG. 7 is a flowchart illustrating an exemplary process for determiningone or more advertisement templates according to some embodiments of thepresent disclosure;

FIG. 8 is a flowchart illustrating an exemplary process for insertingone or more information components into one or more advertisementtemplates according to some embodiments of the present disclosure;

FIG. 9 is a flowchart illustrating an exemplary process for determiningone or more advertisement templates according to some embodiments of thepresent disclosure;

FIG. 10 is a flowchart illustrating an exemplary process for determiningan advertisement template according to some embodiments of the presentdisclosure;

FIG. 11A illustrates an exemplary information component in a layouttemplate according to some embodiments of the present disclosure;

FIG. 11B illustrates an exemplary information component in anadvertisement template according to some embodiments of the presentdisclosure;

FIG. 12 is a flowchart illustrating an exemplary process for processingan image (i.e., an information component) in an ad generation requestaccording to some embodiment of the present disclosure;

FIG. 13 is a flowchart illustrating an exemplary process for dispatchingads according to some embodiment of the present disclosure;

FIG. 14 is a flowchart illustrating an exemplary process for determiningone or more ads based on keyword information according to someembodiment of the present disclosure;

FIG. 15 is a flowchart illustrating an exemplary process for determiningone or more ads based on size information of advertisement slotsaccording to some embodiment of the present disclosure;

FIG. 16 is a flowchart illustrating an exemplary process for determiningone or more trigger conditions for an advertisement element according tosome embodiment of the present disclosure;

FIG. 17 is a flowchart illustrating an exemplary process for determiningan impression of an image according to some embodiment of the presentdisclosure;

FIG. 18 is a flowchart illustrating an exemplary process for generatingan analysis result according to some embodiment of the presentdisclosure;

FIG. 19 is a flowchart illustrating an exemplary process for a ranking aplurality of ads and/or a plurality of information components accordingto some embodiment of the present disclosure;

FIG. 20 is a flowchart illustrating an exemplary process for determininga click-through rate of a label of an information according to someembodiment of the present disclosure;

FIG. 21 is a flowchart illustrating an exemplary process for generatinga label of an information component according to some embodiment of thepresent disclosure; and

FIG. 22 is a flowchart illustrating an exemplary process for generatingof a label of an advertisement element according to some embodiment ofthe present disclosure.

DETAILED DESCRIPTION

The following description is presented to enable any person skilled inthe art to make and use the present disclosure and is provided in thecontext of a particular application and its requirements. Variousmodifications to the disclosed embodiments will be readily apparent tothose skilled in the art, and the general principles defined herein maybe applied to other embodiments and applications without departing fromthe spirit and scope of the present disclosure. Thus, the presentdisclosure is not limited to the embodiments shown, but is to beaccorded the widest scope consistent with the claims.

The terminology used herein is for the purpose of describing particularexample embodiments only and is not intended to be limiting. As usedherein, the singular forms “a,” “an,” and “the” may be intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprise,”“comprises,” and/or “comprising,” “include,” “includes,” and/or“including,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof.

These and other features, and characteristics of the present disclosure,as well as the methods of operation and functions of the relatedelements of structure and the combination of parts and economies ofmanufacture, may become more apparent upon consideration of thefollowing description with reference to the accompanying drawings, allof which form a part of the present disclosure. It is to be expresslyunderstood, however, that the drawings are for purposes of illustrationand description only and are not intended to limit the scope of thepresent disclosure. It is understood that the drawings are not to scale.

The flowcharts used in the present disclosure illustrate operations thatsystems implement according to some embodiments of the presentdisclosure. It is to be expressly understood, the operations of theflowchart may be implemented not in order. Conversely, the operationsmay be implemented in inverted order, or simultaneously. Moreover, oneor more other operations may be added to the flowcharts. One or moreoperations may be removed from the flowcharts.

FIG. 1 illustrates an exemplary network environment of providing anonline advertisement service system according to some embodiments. Theonline advertisement service system 100 may include a server 110, anetwork 120, an ad generation requester terminal 130, a user terminal140, and a storage 150.

The server 110 may be a computer server. The server 110 may communicatewith the ad generation requester terminal 130 and/or the user terminal140 to provide the various functionality of an online advertisementservice. In some embodiments, the server 110 may be a single server or aserver group. The server group may be a centralized server groupconnected to the network 120 via an access point or a distributed servergroup connected to the network 120 via one or more access points,respectively. In some embodiments, the server 110 may be locallyconnected to the network 120 or in remote connection with the network120. For example, the server 110 may access information and/or datastored in the ad generation requester terminal 130, the user terminal140, and/or the storage 150 via the network 120. As another example, thestorage 150 may serve as backend data storage of the server 110. In someembodiments, the server 110 may be implemented on a cloud platform.Merely by way of example, the cloud platform may include a privatecloud, a public cloud, a hybrid cloud, a community cloud, a distributedcloud, an inter-cloud, a multi-cloud, or the like, or any combinationthereof. In some embodiments, the server 110 may be implemented on acomputing device 200 having one or more components illustrated in FIG. 2in the present disclosure.

In some embodiments, the server 110 may include a processing engine 112.The processing engine 112 may process information and/or data related toperforming one or more functions described in the present disclosure.The processing engine 112 may analyze a request from an ad generationrequester terminal 130. In some embodiments, the processing engine 112may perform other functions (e.g., a web search, a map search, etc.)after determining the one or more segments. In some embodiments, theprocessing engine 112 may include one or more processing units (e.g.,single-core processing engine(s) or multi-core processing engine(s)).Merely by way of example, the processing engine 112 may include acentral processing unit (CPU), an application-specific integratedcircuit (ASIC), an application-specific instruction-set processor(ASIP), a graphics processing unit (GPU), a physics processing unit(PPU), a digital signal processor (DSP), a field-programmable gate array(FPGA), a programmable logic device (PLD), a controller, amicrocontroller unit, a reduced instruction-set computer (RISC), amicroprocessor, or the like, or any combination thereof. In someembodiments, the processing engine 112 may be implemented on CPU 220 ofcomputing device 200 illustrated in FIG. 2.

The network 120 may facilitate exchange of information and/or data. Insome embodiments, one or more components in the online advertisementservice system 100 (e.g., the server 110, the ad generation requesterterminal 130, the user terminal 140, the storage 150) may sendinformation and/or data to other component(s) in the onlineadvertisement service system 100 via the network 120. For example, theserver 110 may access and/or obtain a plurality of advertisements oradvertisement templates from the storage 150 via the network 120. Forexample, the server 110 may transmit the one or more advertisements oradvertisement templates to the ad generation requester terminal 130. Insome embodiments, the network 120 may be any type of wired or wirelessnetwork, or combination thereof. Merely by way of example, the network120 may include a cable network, a wireline network, an optical fibernetwork, a tele communications network, an intranet, an Internet, alocal area network (LAN), a wide area network (WAN), a wireless localarea network (WLAN), a metropolitan area network (MAN), a wide areanetwork (WAN), a public telephone switched network (PSTN), a Bluetoothnetwork, a ZigBee network, a near field communication (NFC) network, orthe like, or any combination thereof. In some embodiments, the network120 may include one or more network access points. For example, thenetwork 120 may include wired or wireless network access points such asbase stations and/or internet exchange points 120-1, 120-2, . . . ,through which one or more components of the online advertisement servicesystem 100 may be connected to the network 120 to exchange data and/orinformation.

A user may input a text, an image, audio, or a video via the adgeneration requester terminal 130 to initiate a request for generatingan ad. The ad generation requester terminal 130 may transmit the text,image, audio, or video to the server 110 via the network 120. In someembodiments, the ad generation requester terminal 130 may include amobile device 130-1, a tablet computer 130-2, a laptop computer 130-3, abuilt-in device in a vehicle 130-4, or the like, or any combinationthereof. In some embodiments, the mobile device 130-1 may include asmart home device, a wearable device, a smart mobile device, a virtualreality device, an augmented reality device, or the like, or anycombination thereof. In some embodiments, the smart home device mayinclude a smart lighting device, a control device of an intelligentelectrical apparatus, a smart monitoring device, a smart television, asmart video camera, an interphone, or the like, or any combinationthereof. In some embodiments, the wearable device may include a smartbracelet, a smart footgear, smart glass, a smart helmet, a smart watch,smart clothing, a smart backpack, a smart accessory, or the like, or anycombination thereof. In some embodiments, the smart mobile device mayinclude a smartphone, a personal digital assistance (PDA), a gamingdevice, a navigation device, a point of sale (POS) device, or the like,or any combination thereof. In some embodiments, the virtual realitydevice and/or the augmented reality device may include a virtual realityhelmet, a virtual reality glass, a virtual reality patch, an augmentedreality helmet, an augmented reality glass, an augmented reality patch,or the like, or any combination thereof. For example, the virtualreality device and/or the augmented reality device may include a GoogleGlass™, an Oculus Rift™, a Hololens™, a Gear VR™, et. In someembodiments, a built-in device in the vehicle 130-4 may include abuilt-in computer, a built-in onboard television, a built-in tablet,etc.

The user terminal 140 may display one or more advertisements. The server110 may transmit one or more advertisements to user terminal 140 via thenetwork 120. In some embodiments, the user terminal 140 may include amobile device 140-1, a tablet computer 140-2, a laptop computer 140-3, abuilt-in device in a vehicle 140-4, or the like, or any combinationthereof. In some embodiments, the mobile device 140-1 may include asmart home device, a wearable device, a smart mobile device, a virtualreality device, an augmented reality device, or the like, or anycombination thereof. In some embodiments, the smart home device mayinclude a smart lighting device, a control device of an intelligentelectrical apparatus, a smart monitoring device, a smart television, asmart video camera, an interphone, or the like, or any combinationthereof. In some embodiments, the wearable device may include a smartbracelet, a smart footgear, smart glass, a smart helmet, a smart watch,smart clothing, a smart backpack, a smart accessory, or the like, or anycombination thereof. In some embodiments, the smart mobile device mayinclude a smartphone, a personal digital assistance (PDA), a gamingdevice, a navigation device, a point of sale (POS) device, or the like,or any combination thereof. In some embodiments, the virtual realitydevice and/or the augmented reality device may include a virtual realityhelmet, a virtual reality glass, a virtual reality patch, an augmentedreality helmet, an augmented reality glass, an augmented reality patch,or the like, or any combination thereof. For example, the virtualreality device and/or the augmented reality device may include a GoogleGlass™, an Oculus Rift™, a Hololens™, a Gear VR™, etc. In someembodiments, a built-in device in the vehicle 140-4 may include abuilt-in computer, a built-in onboard television, a built-in tablet,etc.

The storage 150 may store data and/or instructions. The data may includedata related to advertisements, data related to advertisementscomponents, data related to a plurality of click-through rate, datarelated to impression, etc.

In some embodiments, the storage 150 may store data and/or instructionsthat the server 110 may execute to provide the online advertisementservices described in the present disclosure. In some embodiments, thestorage 150 may include a mass storage, removable storage, a volatileread-and-write memory, a read-only memory (ROM), or the like, or anycombination thereof. Exemplary mass storage may include a magnetic disk,an optical disk, a solid-state drive, etc. Exemplary removable storagemay include a flash drive, a floppy disk, an optical disk, a memorycard, a zip disk, a magnetic tape, etc. Exemplary volatileread-and-write memory may include a random access memory (RAM).Exemplary RAM may include a dynamic RAM (DRAM), a double date ratesynchronous dynamic RAM (DDR SDRAM), a static RAM (SRAM), a thyristorRAM (T-RAM), and a zero-capacitor RAM (Z-RAM), etc. Exemplary ROM mayinclude a mask ROM (MROM), a programmable ROM (PROM), an erasableprogrammable ROM (EPROM), an electrically-erasable programmable ROM(EEPROM), a compact disk ROM (CD-ROM), and a digital versatile disk ROM,etc. In some embodiments, the storage 150 may be implemented on a cloudplatform. Merely by way of example, the cloud platform may include aprivate cloud, a public cloud, a hybrid cloud, a community cloud, adistributed cloud, an inter-cloud, a multi-cloud, or the like, or anycombination thereof.

In some embodiments, one or more components in the online advertisementservice system 100 may access the data or instructions stored in thestorage 150 via the network 120. In some embodiments, the storage 150may be directly connected to the server 110 as a backend storage.

In some embodiments, one or more components in the online advertisementservice system 100 (e.g., the server 110, the ad generation requesterterminal 130, the user terminal 140, etc.) may have permissions toaccess the storage 150.

FIG. 2 illustrates an exemplary computing device on which the onlineadvertisement service system can be implemented, according to someembodiments of the present disclosure.

The computing device 200 may be a general-purpose computer or aspecial-purpose computer. Both may be used to implement an onlineadvertisement service system of the present disclosure. The computingdevice 200 may be used to implement any component of the service asdescribed herein. For example, the processing engine 112 of the servermay be implemented on the computing device 200, via its hardware,software program, firmware, or a combination thereof. Although only onesuch computer is shown for convenience, the computer functions relatedto the service as described herein may be implemented in a distributedmanner on a number of similar platforms to distribute the processingload.

The computing device 200, for example, may include COM ports 250connected to and from a network (e.g., the network 120) connectedthereto to facilitate data communications. The computing device 200 mayalso include a CPU 220, in the form of one or more processors, forexecuting program instructions. The exemplary computer platform mayinclude an internal communication bus 210, program storage and datastorage of different forms, for example, a disk 270, and a ROM 230, or aRAM 240, for various data files to be processed and/or transmitted bythe computer. The exemplary computer platform may also include programinstructions stored in the ROM 230, the RAM 240, and/or another type ofnon-transitory storage medium to be executed by the CPU 220. The methodsand/or processes of the present disclosure may be implemented as theprogram instructions. The computing device 200 also includes an I/Ocomponent 260, supporting input/output between the computer, the user,and other components therein. The computing device 200 may also receiveprogramming and data via network communications.

Merely for illustration, only one CPU and/or processor is described inthe computing device 200. However, it should be noted that the computingdevice 200 in the present disclosure may also include multiple CPUsand/or processors, thus operations and/or method steps that areperformed by one CPU and/or processor as described in the presentdisclosure may also be jointly or separately performed by the multipleCPUs and/or processors. For example, the CPU and/or processor of thecomputing device 200 may execute both step A and step B. As in anotherexample, step A and step B may also be performed by two different CPUsand/or processors jointly or separately in the computing device 200(e.g., the first processor executes step A and the second processorexecutes step B, or the first and second processors jointly executesteps A and B).

FIG. 3 illustrates an exemplary mobile device on which the onlineadvertisement service can be implemented, according to some embodimentsof the present disclosure.

As illustrated in FIG. 3, the mobile device 300 may include acommunication module 310, a display 320, a graphic processing unit (GPU)330, a CPU 340, an i/O 350, a memory 360, and a storage 390. In someembodiments, any other suitable component, including but not limited toa system bus or a controller (not shown), may also be included in themobile device 300. In some embodiments, a mobile operating system 370(e.g., iOS™, Android™, Windows Phone™) and one or more applications 380may be loaded into the memory 360 from the storage 390 in order to beexecuted by the CPU 340. The applications 380 may include a browser, amap application, or any other suitable mobile apps for transmitting,receiving and presenting information relating to a service request fromthe processing engine 112 and/or the storage 150. User interactions withthe information stream may be achieved via the i/O 350 and provided tothe processing engine 112 and/or other components of the onlineadvertisement service system 100 via the network 120.

FIG. 4 illustrates an exemplary processing engine 112 according to someembodiments of the present disclosure. The processing engine 112 of theserver 110 may include a generating module 410, a dispatch module 420, adetermination module 430, and a data analysis module 440. One or moremodules in the processing engine 112 may be implemented by at least oneprocessor, such as the CPU 220.

The generating module 410 may generate a plurality of ads. An ad mayinclude a plurality of advertisement elements. In some embodiments, anadvertisement element may relate to a logo, a product, a model, acopywrite, a button, a background, an ornament, an industryclassification, an industry subclassification, a business name, or thelike, or a combination thereof. Merely by way of example, for an ad of alipstick, the ad may include four advertisement elements relating tologos, products, copywrite, and/or models. The advertisement element mayinclude a plurality of images. It should be noted that an image ismerely a material (also referred to as information component) of theadvertisement element and is not intended to be limiting. Theinformation component may include other suitable forms, for example, atext, a video. For example, for an advertisement element relating toproducts, the advertisement element may include one or more images ofthe products. More particularly, for example, the advertisement elementmay include four images of the products including an image of product A,an image of product B, an image of product C, and an image of product D.

In some embodiments, the generating module 410 may generate theplurality of ads by combining one or more advertisement elements, i.e.,by combining one or more information components (e.g., one or moreimages) included in the one or more advertisements respectively. Forillustration purposes only, a generation of the plurality of ads is usedbelow as an example and is not intended to be limiting. Assume that anad includes four advertisement elements (for example, an advertisementelement relating to products, copywrite, logos, and buttons), theadvertisement element relating to products includes three images (forexample, an image of product A, an image of product B, an image ofproduct C), the advertisement element relating to copywrite includesfour images, the advertisement element relating to logos includes oneimage, and the advertisement element relating to buttons includes oneimage. The generating unit 410 may select one image of the advertisementelement relating to products, copywrite, logos, and buttons respectivelyand generate an ad. For example, the generating unit 410 may select oneof the images of product A, the image of product B, and the product C asan advertisement element to generate the ad. Accordingly, the generatingunit 410 may generate twelve (i.e., 3*4*1*1) ads based on theadvertisement elements relating to products, copywrite, logos, andbuttons.

In some embodiments, the plurality of ads may be generated according tothe process 600, process 700, process 800, process 900, process 1000,process 1200, or a combination of thereof.

In some embodiments, the dispatch module 420 may transmit the determinedone or more ads to the user terminal via the network. The transmissionmay be wired or wireless. The dispatch module 420 may determine one ormore ads based on the request. In some embodiments, the determinationmay include selecting the one or more ads from an ads store database. Insome embodiments, the dispatch module 420 may determine the one or moreads based on the demand information included in the request. Forexample, in process 1400, the dispatch module 420 may determine the oneor more ads based on the keyword information.

In some embodiments, the dispatch module 420 may transmit a plurality ofads to one or more user terminals. The dispatch module 420 may receive arequest for displaying an ad at a user terminal.

The determination module 430 may determine the number of clicks of eachof the plurality of ads and a number of clicks of each of informationcomponents included in the plurality of ads. In some embodiments, thenumber of clicks and the number of impressions of each of the pluralityof ads may be obtained in a pre-determined period. The predeterminedperiod may be set manually by a user or automatically by, for example,the determination module 430. The predetermined period may be set withina given period, for example, from 14:00 p.m. to 18:00 p.m. Thepre-determined period may be one hour, two hours, or any suitableranges.

The data analysis module 440 may determine, for each of the plurality ofads, a click-through rate for the plurality of advertisement elementsand a click-through rate for the plurality of images based on theclick-through rate of each of the plurality of ads. The click-throughrate of an advertisement element may refer to an average ofclick-through rates of information components included in theadvertisement element. For illustration purposes only, assume that anadvertisement element includes four images. The click-through rate ofthe advertisement element may refer to an average of click-through ratesof the four images. The click-through rate of an image may refer to aratio of the total number of clicks of one or more ads including theimage to the total number of impressions of the one or more ads. Forillustration purposes only, for an image, assume that four ads includethe image. The click-through rate of the image may refer to a ratio ofthe number of clicks of the four ads to the number of impressions of thefour ads.

In some embodiments, the data analysis module 440 may determine a numberof impressions of at least one of images included in the plurality ofads based on click-through rates of the plurality of advertisementelements, click-through rates of the images included in the plurality ofads and a number of impressions of the plurality of ads. The number ofimpressions of the plurality of ads may be pre-determined by a user ordetermined automatically by, for example, the dispatch module 420. Forexample, a user may determine the number of impressions of the pluralityof ads as one million.

In some embodiments, the data analysis module 440 may determine thenumber of impressions of an image based on a ratio of a weight of theimage and a total weight of images included in the plurality of ads andthe number of impressions of the plurality of ads. The weight of theimage may refer to a ratio of a click-through rate of the image to aclick-through rate of an advertisement element including the image.

FIG. 5 is a flowchart illustrating an exemplary process and/or method500 for processing one or more ads according to some embodiments of thepresent disclosure. The process and/or method 500 may be executed by theonline advertisement service system 100. For example, the process and/ormethod 500 may be implemented as a set of instructions (e.g., anapplication) stored in the storage 150. The CPU 220 may execute the setof instructions, and when executing the instructions, the processor mayaccordingly be directed to perform the process and/or method 500. Theoperations of the illustrated process and/or method presented below areintended to be illustrative. In some embodiments, the process and/ormethod may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the process and/ormethod as illustrated in FIG. 5 and described below is not intended tobe limiting.

In 501, the generating unit 410 may generate a plurality of ads. An admay include a plurality of advertisement elements. In some embodiments,an advertisement element may relate to a logo, a product, a model, acopywrite, a button, a background, an ornament, an industryclassification, an industry subclassification, a business name, or thelike, or a combination thereof. Merely by way of example, for an ad of alipstick, the ad may include four advertisement elements relating tologos, products, copywrite, and models. The advertisement element mayinclude a plurality of images. It should be noted that an image ismerely a material (also referred to as information component) of theadvertisement element and is not intended to be limiting. Theinformation component may include other suitable forms, for example,words, a video. For example, for an advertisement element relating toproducts, the advertisement element may include one or more images ofthe products. More particularly, for example, the advertisement elementmay include four images of the products including an image of product A,an image of product B, an image of product C, and an image of product D.

In some embodiments, the generating module 410 may generate theplurality of ads by combining one or more advertisement elements, i.e.,by combining one or more information components (e.g., one or moreimages) included in the one or more advertisements respectively. Forillustration purposes only, a generation of the plurality of ads is usedbelow as an example and is not intended to be limiting. Assume that anad includes four advertisement elements (for example, an advertisementelement relating to products, copywrite, logos, and buttons), theadvertisement element relating to products includes three images (forexample, an image of product A, an image of product B, an image ofproduct C), the advertisement element relating to copywrite includesfour images, the advertisement element relating to logos includes oneimage, and the advertisement element relating to buttons includes oneimage. The generating unit 410 may select one image of the advertisementelement relating to products, copywrite, logos, and buttons respectivelyand generate an ad. For example, the generating unit 410 may select oneof the images of product A, the image of product B, and the product C asan advertisement element to generate the ad. Accordingly, the generatingunit 410 may generate twelve (i.e., 3*4*1*1) ads based on theadvertisement elements relating to products, copywrite, logos, andbuttons.

In some embodiments, step 501 may be performed according to process 600(illustrated in FIG. 6 and described below), process 700 (illustrated inFIG. 7 and described below), process 800 (illustrated in FIG. 8 anddescribed below), process 900 (illustrated in FIG. 9 and describedbelow), process 1000 (illustrated in FIG. 10 and described below),process 1200 (illustrated in FIG. 12 and described below), or acombination of thereof.

In 502, the dispatch module 420 may dispatch the generated ads to one ormore user terminals. The one or more user terminals may display the adsreceived on one or more channels. The one or more channels refer tomediums displaying the plurality of ads, for example, Facebook, Weibo,and Twitter. In some embodiments, the plurality of ads may be shown atthe user terminals in a given period. The period may be setautomatically by, for example, by the dispatch module 420, or manuallyby an operator of the dispatch module 420. The period may be set fallingin a specific period, for example, from 14:00 p.m. to 18:00 p.m. Theperiod may be one hour, two hours, or any suitable ranges.

In some embodiments, the generated ads may be dispatched to one or moreuser terminals according to the process 1300 (illustrated in FIG. anddescribed below), process 1400 (illustrated in FIG. 14 and describedbelow), process 1500 (illustrated in FIG. 15 and described below),process 1600 (illustrated in FIG. 16 and described below), or acombination thereof.

In 503, the determination module 430 may determine performance data foreach of the plurality of ads. In some embodiments, the performance dataincludes a click-through rate. The click-through rate of an ad usedherein refers to a ratio of the number of clicks on the ad to the numberof impressions of the ad, and the impression refers to a visit by a userterminal to one or more channels displaying the ad.

In some embodiments, the number of clicks and the number of impressionsof each of the plurality of ads may be measured in a pre-determinedperiod. The predetermined period may be set manually by a user orautomatically by, for example, the determination module 430. Thepredetermined period may be set falling in a given period, for example,from 14:00 p.m. to 18:00 p.m. The pre-determined period may be one hour,two hours, one day, one week, one month, or any suitable ranges.

In some embodiments, step 503 may be performed based on process 2000(illustrated in FIG. 20 and described below), process 2100 (illustratedin FIG. 21 and described below), or process 2200 (illustrated in FIG. 22and described below), or a combination thereof.

In some embodiments, in 501, the generation module 410 may generate anad based, at least in part on, the performance data of one or more otherads. For example, the determination module 430 may generate a firstplurality of ads, the first plurality of ads including a first pluralityof advertisement elements and a first plurality of informationcomponents. The dispatch module 420 may transmit, via a network (e.g.,the network 120), the first plurality of ads to the first group of userterminals (e.g., user terminals 140). The determination module 430 maydetermine at least one of a click-through rate, a number of impressions,and/or a conversion rate for the first plurality of ads. Thedetermination module 430 may further analyze the at least one of theclick-through rate, the number of impressions, or the conversion rate ofthe first plurality of ads. The generation module 410 may receive theperformance data related to the first plurality of ads (e.g., thedetermined click-through rate, number of impressions, and/or aconversion rate for the first plurality of ads) and/or the analysisresults obtained by the determination module 430. The generation module410 may also generate an ad based, at least in part on the performancedata of one of the first plurality of ads (or the information componentsand/or the advertisement included therein). For instance, the generationmodule 410 may generate a new ad including the information component(s)that has the highest ranking among all the information componentsincluded in the first plurality of ads, which may be determined by thedetermination module 430 according to the performance data of the firstplurality ads. The dispatch module 420 may receive the new ad generatedby the generation module 420 and dispatch the new ad to one or more userterminals. The one or more user terminals may be the same with ordifferent from the user terminal(s) that received one or more of thefirst plurality of ads.

FIG. 6 is a flowchart illustrating an exemplary process and/or methodfor generating one or more ads according to some embodiments of thepresent disclosure. The process and/or method 600 may be executed by theonline advertisement service system 100. For example, the process and/ormethod 600 may be implemented as a set of instructions (e.g., anapplication) stored in the storage 150. The CPU 220 may execute the setof instructions, and when executing the instructions, the processor mayaccordingly be directed to perform the process and/or method 600. Theoperations of the illustrated process and/or method presented below areintended to be illustrative. In some embodiments, the process and/ormethod may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the process and/ormethod as illustrated in FIG. 6 and described below is not intended tobe limiting.

In 601, the generating module 410 (e.g., the access unit in thegenerating module 410) may access a database including a plurality ofadvertisement elements. In some embodiments, the generating module 410(e.g., the access unit) may access the database and data stored in thestorage 150. The advertisement elements may include at least onecategory of a plurality of information components. The advertisementelement may include a company logo, a company name, industry, a product,a model, a copywrite, a trademark, a celebrity, or the like, or anycombination thereof. In some embodiments, each advertisement element mayinclude at least one information component. The information componentmay include an image, a word, a phrase, a sentence, a video, audio, orthe like, or any combination thereof. The image may include a portraitimage, an animal image, a scene image, a button image, or the like, orany combination thereof. The word may include a company name, a productname, a copywrite, or the like, or any combination thereof. The videomay include a product video, a service video, or the like, or anycombination thereof. A plurality of logo images of one or more companiesmay be classified as an advertisement element of company logo and storedin the database. A plurality of product images may be classified as anadvertisement element of a product and stored in the database. In someembodiments, generating module 410 may update the database aftergenerating an ad.

In 602, the generating module 410 (e.g., the access unit) may access aplurality of advertisement templates. An advertisement template mayinclude at least one advertisement region. In some embodiments, eachadvertisement region may correspond to an advertisement element. Forexample, the advertisement template may include three advertisementregions, which may correspond to a company logo, a product and acopywrite, respectively. In some embodiments, each advertisement regionmay be associated with more than one advertisement element. For example,the advertisement template may include two advertisement regions, thefirst advertisement region be corresponding to a company logo and/or amodel, and the second advertisement region be corresponding to industry,a company name, and/or a model. In some embodiments, the advertisementelement corresponding to different regions may be the same or different.For example, an advertisement template may include four regions. Oneregion may correspond to a company logo. One region may correspond to acelebrity. The other two regions may correspond to a product.

In some embodiments, the advertisement templates may have differentsizes. An advertisement template may have more than one size. The sizeof the advertisement template may be determined based on an ad slot, anad generation requester, etc. The process and/or method of generating aplurality of advertisement templates with different sizes may bedescribed in an exemplary process and/or method 900 illustrated in FIG.9. In some embodiments, the plurality of advertisement templates may bestored in a storage medium (e.g., the storage 150, the storage 150, thestorage 390). The generating module 410 (e.g., the access unit) mayaccess the plurality of advertisement templates from the storage medium.

In 603, the generating module 410 (e.g., the receiving unit in thegenerating module 410) may receive an ad generation request forgenerating one or more ads. The ad generation request may be initiatedby an ad generation requester via the ad generation requester terminal130. In some embodiments, the ad generation request may be received fromthe I/O 230 or the I/O 350. In some embodiments, the ad generationrequest may include a total number of ads the ad generation requesterwants to generate, one or more information components to be generated,one or more information elements, or the like, or any combinationthereof. The one or more information components to be generated mayinclude an image, a word, a video, audio, or the like, or anycombination thereof. For example, the ad generation request from the adgeneration requester may include three ads, a video of a product, and acompany logo image. In some embodiments, the information component(s) inthe ad generation request may be processed before generating one or moreads according to an exemplary process and/or method 1200 illustrated inFIG. 12 and described in detail below.

In 604, the generating module 410 (e.g., the determination unit in thegeneration module 410) may obtain one or more advertisement templatesfor the one or more ads to be generated according to the plurality ofadvertisement templates and the ad generation request. In someembodiments, the generating module 410 may first determine a demandquantity of the one or more advertisement templates based on the adgeneration request. The generating module 410 may then determine theadvertisement templates from the plurality of advertisement templatesbased on scores of the plurality of advertisement templates. Thegeneration module 410 may determine a score for each advertisementtemplate of the plurality of advertisement templates. The determinedadvertisement templates may have the same number as the demand numberspecified in the ad generation request. In some embodiments, the one ormore advertisement templates may be determined according to an exemplaryprocess and/or method 700 illustrated in FIG. 7.

In some embodiments, one advertisement template may be used to generateone or more ads. For example, an advertisement template may include fouradvertisement elements. The first advertisement element may includethree information components included in the ad generation request. Thesecond advertisement element may include two information componentsincluded in the ad generation request. The third and the fourthadvertisement element may each include one information componentincluded the ad generation request. Then the advertisement template maygenerate 6 ads (3*2*1*1). In some embodiments, a demand quantity ofadvertisement templates may be less than or equal to the total number ofads. The demand quantity of advertisement templates may be determinedbased on the ad generation request.

In 605, the generating module 410 (e.g., the inserting unit in thegenerating module 410) may insert one or more information componentsinto the determined one or more advertisement templates. In someembodiments, for a determined advertisement template, the generatingmodule 410 (e.g., the inserting unit) may determine whether the adgeneration request matches an advertisement element in an advertisementregion of the determined advertisement template. The generating module410 (e.g., the inserting unit) may determine the number of theinformation components in the ad generation request equal to apredetermined number of the advertisement region of the determinedadvertisement template. Then the generating module 410 (e.g., theinserting unit) may insert the predetermined number of informationcomponents included in the ad generation request and/or the databaseinto the advertisement region(s) of the determined advertisementtemplate. The one or more information components may be inserted intothe determined advertisement templates according to an exemplary processand/or method 800 illustrated in FIG. 8.

In 606, the generating module 410 (e.g., a generation unit in thegenerating module 410) may generate one or more ads based on the one ormore determined advertisement templates inserted with the one or moreinformation components. For example, if an advertisement templateincludes three advertisement regions 1, 2 and 3, corresponding to threeadvertisement elements respectively, e.g., a company name, industry, amodel. The information components in the ad generation request mayinclude a company name A corresponding to the company name, an industryB corresponding to the industry, and a model image C corresponding tothe model. The generating module 410 may insert the informationcomponents of the company name A, the industry B and the model image Cinto the three advertisement regions 1, 2, and 3 respectively togenerate an ad.

In some embodiments, the generation module 410 may determine one or morenew ads based on pre-existing ads. For example, the generation module410 may segment one or more pre-existing ads and obtain at least one ofadvertisement elements based on the segmentation of the one or morepre-existing ads. The generation module 410 may generate one or more newads including the obtained advertisement element(s).

In some embodiment, the generation module 410 may further generation oneor more new ads from the determined one or more ads based on a result ofthe analysis from the data analysis module 440. The result of theanalysis may include a click-through rate, the number of impressions, aconversion rate of the determined one or more ads, or the like, or anycombination thereof.

In some embodiments, the generation module 410 may obtain a firstplurality of advertisement elements. The generation module 410 maydetermine the at least one of the one or more ads according to two ofthe obtained first plurality of advertisement elements.

In some embodiments, the one or more generated ads may be stored in anads database (e.g., the storage 150, the storage 150, the storage 390).In some embodiments, the dispatch module 420 may determine one or moreads from the ad database to transmit the one or more ads to a userterminal. For example, the dispatch module 420 may transmit the one ormore ads according to process 1300 in the present disclosure. In someembodiments, the one or more generated ads may be stored in the addatabase, and each generated ad may include one or more labelsassociated with the generated ad. The one or more labels may begenerated according to process 2000 (illustrated in FIG. 20), process2100 (illustrated in FIG. 21), or process 2200 (illustrated in FIG. 22),or a combination thereof.

It should be noted that the above description of the process/method forgenerating the one or more ads is provided for the purpose ofillustration, and is not intended to limit the scope of the presentdisclosure. For persons having ordinary skills in the art, multiplevariations and modifications may be made under the teaching of thepresent disclosure. However, those variations and modifications do notdepart from the scope of the present disclosure. For example, step 601and step 602 may be performed simultaneously. As another example, step602 may be performed before step 601.

FIG. 7 is a flowchart illustrating an exemplary process and/or method700 for determining one or more advertisement templates according tosome embodiments of the present disclosure. The process and/or method700 may be executed by the online advertisement service system 100. Forexample, the process and/or method 700 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the CPU 220 may accordingly be directed to perform theprocess and/or method 700. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 7 anddescribed below is not intended to be limiting.

In 701, the generating module 410 (e.g., the determination unit) maydetermine a demand quantity of advertisement templates for generatingone or more ads. The generating module 410 (e.g., the determinationunit) may determine the demand quantity of advertisement templatesaccording to Equation (1):

$\begin{matrix}{M = \left\{ {\begin{matrix}{N,} & {T \geq N} \\{T,} & {T < N}\end{matrix},} \right.} & (1)\end{matrix}$

wherein M represents the demand quantity of advertisement templates, Nrepresents the total number of ads to be generated, and T represents thetotal number of advertisement templates. For example, if the totalnumber of advertisement templates T is 50, the total number of ads to begenerated N is 12, the generating module 410 (e.g., the determinationunit) may determine the demand quantity of advertisement templates M is12. As another example, if the total number of advertisement templates Tis 20, the total number of ads to be generated N is 50, the generatingmodule 410 (e.g., the determination unit) may determine the demandquantity of advertisement templates M is 20. The generating module 410(e.g., the determination unit) may also determine a number of ads thatan advertisement template may generate according to Equation (2):

C=┌N/M┐  (2),

wherein C represents the number of ads that an advertisement templatemay generate, M represents the demand quantity of advertisementtemplates, N represents the total number of ads to be generated, and Πrepresents that C is an integer associated with N/M.

In 702, the generating module 410 (e.g., the determination unit) maydetermine scores for the plurality of advertisement templates. Eachadvertisement template may have a score. In some embodiments, for anadvertisement template, the generating module 410 (e.g., thedetermination unit) may determine the score for the advertisementtemplate according to Equation (3):

Score(i)=a*auditRate(i)+c*ctr(i)+m*matchRat(i)+u*useRate(i)+f*freshnessRate(i)  (3),

wherein i represents an advertisement template i in the plurality ofadvertisement templates, Score(i) represents a score of theadvertisement template I, and auditRate(i) represents an audit rate ofthe advertisement template i. For example, the advertisement template igenerates 100 ads and there are 95 ads are audited to be dispatched. Theaudit rate auditRate(i) is 0.95. ctr(i) represents an overallclick-through rate (CTR rate) of the advertisement template i. Forexample, the total exposure amount of the ads that the advertisementtemplate i generated is 10000 and the total number of clicking of thecorresponding ads is 100. The overall CTR ctr(i) is 100/10000.matchRat(i) represents a matching rate of the advertisement template iand the ad generation request. For example, the advertisement template iis inserted with four information components and three informationcomponents are from the ad generation request. The matching ratematchRat(i) is ¾. useRate(i) represents a use rate of the advertisementtemplate i. For example, the advertisement template i includes threeadvertisement elements and the three advertisement elements maycorrespond to 3, 4, and 5 information components, respectively. Thetotal number of ads that may be totally generated with respect to theadvertisement template i may be 3*4*5=60. If the number of generated adswith respect to advertisement template i is 30, the use rate useRate(i)is 30/60. freshnessRate(i) represents a freshness rate. For example, atimestamp of recently being used the advertisement template i is1460217600, and the current timestamp is 1460397594. The freshness ratefreshnessRate(i) is 1460217600/1460397594. The letters a, c, m, u and fin the Equation (3) represent corresponding coefficients. Thecoefficients (e.g., a, c, m, u and f) are non-zero values. The largerthe coefficient is, the more important the factor (e.g., auditRate(i),ctr(i), matchRat(i), useRate(i) or freshnessRate(i)) is. For example, ifcoefficient a is the largest, the contribution of auditRate(i) to thescore may be greatest.

In some embodiments, the audit rate auditRate(i), the overall CTR ratectr(i), the matching rate matchRat(i), the use rate useRate(i), and thefreshness rate freshnessRate(i) may be acquired from the storage 150. Insome embodiments, the audit rate auditRate(i), the overall CTR ratectr(i), the matching rate matchRat(i), the use rate useRate(i) and thefreshness rate freshnessRate(i) may be updated according to a feedbackfrom the data analysis module 440. In some embodiments, the values ofthe coefficients (e.g., a, c, m, u, and f) may be adjusted according tothe feedback from the data analysis module 440. The generating module410 (e.g., the determination unit) may determine scores for a pluralityof advertisement templates according to the factors and thecoefficients.

In 703, the generating module 410 (e.g., the determination unit) mayrank the plurality of advertisement templates based on their scores. Insome embodiments, the generating module 410 (e.g., the determinationunit) may rank the plurality of advertisement templates in descendingorder based on the scores. For example, the generating module 410 (e.g.,the determination unit) may compare scores of two advertisementtemplates. The generating module 410 (e.g., the determination unit) mayrank the two advertisement templates in descending order. The ranking ofthe plurality of advertisement templates may be determined accordingly.

In some embodiments, the rank of the plurality of advertisementtemplates may be updated based on an analysis result determined by thedata analysis module 440. The analysis result may be determinedaccording to the processes 1700, 1800, 1900, 2000, 2100, 2200 discussedbelow. For example, the data analysis module 440 may analyze the numberof clicks on an ad and/or the number of clicks of the informationcomponents of the ad to obtain an analysis result. The data analysismodule 440 (or the generation module 410) may rank this advertisementtemplate by comparing its score with other advertisement templates.Alternatively or additionally, the data analysis module 440 may obtainan analysis result by analyzing the number of impressions of the adand/or the number of impressions of the information components of thead. Alternatively or additionally, the data analysis module 440 mayanalyze the conversion rate of the ad and the conversion rate of theinformation components of the ad. The data analysis module 440 may alsodetermine a score of the advertisement template based on which the ad isgenerated according to the analysis result.

In 704, the generating module 410 (e.g., the determination unit) maydetermine one or more advertisement templates based on the plurality ofadvertisement templates, the demand quantity, and the ranking. In someembodiments, the generating module 410 (e.g., the determination unit)may select the demand quantity of advertisement templates from theplurality of advertisement templates based on the ranking. For example,the demand quantity of the advertisement template is 8, and thegenerating module 410 may select 8 advertisement templates with the 8top ranking from the plurality of advertisement templates. Thegenerating module 410 may determine the 8 advertisement templates withthe 8 top ranking with respect to the ad generation request.

It should be noted that the above description of the process/method fordetermining the one or more advertisement templates is provided for thepurpose of illustration, and is not intended to limit the scope of thepresent disclosure. For persons having ordinary skills in the art,multiple variations and modifications may be made under the teaching ofthe present disclosure. However, those variations and modifications donot depart from the scope of the present disclosure. For example, beforestep 701, a pre-filtered step may be added to pre-filter the pluralityof advertisement templates according to the information component and/oradvertisement elements from the ad generation request.

FIG. 8 is a flowchart illustrating an exemplary process and/or method800 for inserting one or more information components into one or moreadvertisement templates according to some embodiments of the presentdisclosure. The process and/or method 800 may be executed by the onlineadvertisement service system 100. For example, the process and/or method800 may be implemented as a set of instructions (e.g., an application)stored in the storage 150. The CPU 220 may execute the set ofinstructions, and when executing the instructions, the CPU 220 mayaccordingly be directed to perform the process and/or method 800. Theoperations of the illustrated process and/or method presented below areintended to be illustrative. In some embodiments, the process and/ormethod may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the process and/ormethod as illustrated in FIG. 8 and described below is not intended tobe limiting.

In 801, the generating module 410 (e.g., a determination unit of thegenerating module 410) may determine whether the ad generation requestmatches an advertisement element in an advertisement region of anadvertisement template. The ad generation request may include one ormore information components corresponding to one or more advertisementelements. The generating module 410 (e.g., the determination unit) maydetermine whether one of the information components in the ad generationrequest matches an advertisement element in an advertisement region ofan advertisement template. For example, the ad generation request mayinclude an image of a model corresponding to an advertisement element of“model.” One of the advertisement regions of an advertisement templatemay correspond to an advertisement element of “model.” The generatingmodule 410 (e.g., a determination unit) may determine that the adgeneration request matches the advertisement element in theadvertisement region of the advertisement template.

In response to the determination that the ad generation request matchesan advertisement element in an advertisement region of the advertisementtemplate, the generating module 410 (e.g., the determination unit) mayperform step 802.

In 802, the generating module 410 (e.g., the determination unit) maydetermine whether the number of information components in the adgeneration request equals to a predetermined number of informationcomponents in the advertisement region. The number of informationcomponents may be determined based on the ad generation request. In someembodiments, the predetermined number may be determined based on theadvertisement template.

In response to the determination that the number of informationcomponents in the ad generation request equals to the predeterminednumber of information components for an advertisement region of theadvertisement template, the generating module 410 (e.g., thedetermination unit) may perform step 803.

In 803, the generating module 410 (e.g., the inserting unit) may insertthe information components from the ad generation request into theadvertisement region. For example, for an advertisement region of theadvertisement template, the advertisement region may correspond to anadvertisement element, e.g., product. The advertisement element (e.g.,product) may include three information components (three productpictures). The predetermined number of information component in theadvertisement region is 3. The generating module 410 (e.g., theinserting unit) may insert the three information components (threeproduct pictures) into the advertisement region.

Referring back to step 802, in response to the determination that thenumber of information components in the ad generation request does notequal to the predetermined number of information components for anadvertisement region of the advertisement template, the generatingmodule 410 (e.g., the determination unit) may perform step 804. In 804,the generating module 410 (e.g., the determination unit) may determinethe same number of information components from the ad generation requestand the database. In some embodiments, for an advertisement region, ifthe number of information components in the ad generation request isless than a predetermined number, the generating module 410 (e.g., thedetermination unit) may access the database to acquire one or moreinformation components corresponding to the advertisement region. Thetotal number of information components from the ad generation requestand the database may equal to the predetermined number. For example, anadvertisement template may include three advertisement regions. Thefirst region may correspond to five information components. The secondregion may correspond to two information components. The third regionmay correspond to one information component. The number of informationcomponents in the ad generation request corresponding the first regionmay be two. The number of information component in the ad generationrequest corresponding to the second region may be one. The number ofinformation component in the ad generation request may be one. Thegenerating module 410 (e.g., the determination unit) may access thedatabase to acquire three information components corresponding to thefirst region, and one information component corresponding to the secondregion.

In some embodiments, the information components obtained from thedatabase may be determined by scores for the information componentscorresponding to the advertisement regions of the advertisementtemplate. The generating module 410 (e.g., the determination unit) maydetermine scores for the information components according to Equation(4):

Score(k)=ea*auditRate(k)+ec*ctrRate(k)+ef*freshnessRate(k)  (4),

wherein k represents an information components k corresponding to theadvertisement regions of the advertisement template; Score (k)represents a score for the information component k; auditRate(k)represents an audit rate of the information component k; ctrRate(k)represents an overall CTR rate of the information component k;freshnessRate(k) represents a freshness rate of the informationcomponent k. ea, ec, ef represent corresponding coefficients. Thecoefficients (e.g., ea, ec, ef) is non-zero values. In some embodiments,the larger the coefficient is, the more important the factor (e.g.,auditRate(k), ctr(k), matchRat(k), useRate(k) or reshnessRate(k)) is.

In some embodiments, the coefficient of the plurality of informationcomponent may be updated based on an analysis result determined by thedata analysis module 440. The analysis result may be determinedaccording to the processes 1700, 1800, 1900, 2000, 2100, 2200 discussedbelow. For example, the data analysis module 440 may analyze the numberof clicks on an ad and/or the number of clicks of the informationcomponents of the ad to obtain an analysis result. The data analysismodule 440 (or the generation module 410) may rank this advertisementtemplate by comparing its score with other advertisement templates.Alternatively or additionally, the data analysis module 440 may obtainan analysis result by analyzing the number of impressions of the adand/or the number of impressions of the information components of thead. Alternatively or additionally, the data analysis module 440 mayanalyze the conversion rate of the ad and the conversion rate of theinformation components of the ad. The data analysis module 440 may alsodetermine a score of the information component based on which the ad isgenerated according to the analysis result.

In 805, the generating module 410 (e.g., the inserting unit) may insertthe same number of information components into the advertisement region.In some embodiments, if the total number of information components fromthe ad generation request and the database equals to the predeterminednumber corresponding to the advertisement region, the generating module410 (e.g., the inserting unit) may insert the information componentsfrom the ad generation request and the database into the correspondingadvertisement region of the advertisement template.

Referring back to step 801, in response to the determination that the adgeneration request does not match an advertisement element in anadvertisement region of the advertisement template, the generatingmodule 410 (e.g., the determination unit) may perform step 806. In 806,the generating module 410 (e.g., the inserting unit) may insert thepredetermined number of information components from the database intothe advertisement region. In some embodiments, if the ad generationrequest does not match the advertisement element in the advertisementregion of the advertisement template, the generating module 410 (e.g.,the determination unit) may access the database to acquire thepredetermined number of information component for the advertisementregion. The generating module 410 (e.g., the inserting unit) may insertthe acquired predetermined number of information components into theadvertisement region. The information components obtained from thedatabase may be determined based on the method for determining scores ofthe information components similar to the Equation (4) described above.

It should be noted that the above description of the process/method forcalibrating the alignment device is provided for the purpose ofillustration, and is not intended to limit the scope of the presentdisclosure. For persons having ordinary skills in the art, multiplevariations and modifications may be made under the teaching of thepresent disclosure. However, those variations and modifications do notdepart from the scope of the present disclosure.

FIG. 9 is a flowchart illustrating an exemplary process and/or method900 for determining one or more advertisement templates according tosome embodiments of the present disclosure. The process and/or method900 may be executed by the online advertisement service system 100. Forexample, the process and/or method 900 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the CPU 220 may accordingly be directed to perform theprocess and/or method 900. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 9 anddescribed below is not intended to be limiting.

In 910, the generating module 410 (e.g., the generation unit) maydetermine one or more size groups based on a plurality of advertisementslots. In some embodiments, the plurality of advertisement slots mayinclude one or more aspect ratios. The generating module 410 (e.g., thetemplate generation unit) may determine one or more size groups based onthe one or more aspect ratios. The aspect ratio may be determinedaccording to Equation (5):

r=w/h  (5),

wherein r represents the aspect ratio of an advertisement slot; wrepresents the width of the advertisement slot; h represents the heightof the advertisement slot.

In some embodiments, the generating module 410 (e.g., the generationunit) may determine at least one size group based on the aspect ratio.For example, the generating module 10 may determine six size groupsbased on the aspect ratio. The six size groups may include a fullcolumn, a banner, a small banner, a rectangle, a small vertical picture,and a vertical picture. As shown in Table 1, if an aspect ratio r of anadvertisement slot is larger than 9, the advertisement slot may beclassified as the full column. If an aspect ratio r of an advertisementslot is within a range of 9≥r>10/3, the advertisement slot may beclassified as the banner. If an aspect ratio of an advertisement slot iswithin a range of 10/3≥r>10/7, the advertisement slot may be classifiedas the small banner. If an aspect ratio of an advertisement slot iswithin a range of 10/7≥r>7/10, the advertisement slot may be classifiedas the rectangle. If an aspect ratio of an advertisement slot is withina range of 7/10≥r>4/10, the advertisement slot may be classified as thesmall vertical picture. If an aspect ratio of an advertisement slot isless than or equal to 4/10, the advertisement slot may be classified asthe vertical picture. As shown in Table 1, each size group may includefive sizes for illustration purpose. In some embodiments, a size groupmay include more than five sizes according to practical situations.

TABLE 1 Aspect Ratio Range Exemplary Size Size Group (r = w/h) (ppi)Full column r > 9   960 × 60  960 × 70  960 × 80  960 × 90  960 × 100Banner   9 ≥ r > 10/3 810 × 90  728 × 90  640 × 90  580 × 90  360 × 90 Small banner 10/3 ≥ r > 10/7 300 × 90  300 × 120 300 × 150 300 × 180 300× 200 Rectangle 10/7 ≥ r > 7/10 300 × 210 300 × 250 250 × 250 250 × 300225 × 300 Small vertical 7/10 ≥ r > 4/10 140 × 200 140 × 220 140 × 240120 × 240 120 × 270 Vertical r ≤ 4/10 240 × 600 200 × 600 160 × 600 140× 600 120 × 600

In 902, the generating module 410 (e.g., the generating unit) may obtainone or more layout templates based on the one or more size groups. Insome embodiments, the generating module 410 (e.g., the generating unit)may determine one layout template for one size group. A size group mayhave the same layout. For example, the generating module 410 (e.g., thegenerating unit) may determine a template with size 960×80 as a layouttemplate for the full column. The generating module 410 (e.g., thegenerating unit) may determine a template with size 640×90 as a layouttemplate for the banner. The generating module 410 (e.g., the generatingunit) may determine a template with size 300×150 as a layout templatefor the small banner. The generating module 410 (e.g., the generatingunit) may determine a template with size 250×250 as a layout templatefor the rectangle. The generating module 410 (e.g., the generating unit)may determine a template with size 140×240 as a layout template for thesmall vertical picture. The generating module 410 (e.g., the generatingunit) may determine a template with size 160×600 as a layout templatefor the vertical picture. In some embodiments, the generating module 410may store the determined one or more layout templates in a layouttemplate database (in e.g., the storage 150, the storage 150, thestorage 390).

In 903, the generating module 410 (e.g., the generating unit) may obtaina plurality of advertisement elements according to the one or morelayout templates. For example, the generating module 410 may obtain theplurality of advertisement elements from the one or more layouttemplates. In some embodiments, a layout template may include one ormore layers. A layer may include at least one information component. Aninformation component may correspond to one advertisement element. Thegenerating module 410 (e.g., the generating unit) may extract aplurality of advertisement elements for the one or more layers of thelayout template. In some embodiments, the plurality of advertisementelements may correspond to different advertisement regions of the layouttemplate. For example, a company logo may correspond to region A of thelayout template, and product may correspond to region B. The generatingmodule 410 (e.g., the generating unit) may determine the plurality ofadvertisement elements in the corresponding advertisement regions of theone more layout templates.

In 904, the generating module 410 (e.g., the generating unit) maydetermine the one or more advertisement templates based on the pluralityof advertisement elements and the one or more layout templates. Thegenerating module 410 may generate the one or more advertisementtemplates having a different size based on the plurality ofadvertisement elements and the one or more layout templates. Forexample, the plurality of advertisement elements may include a pluralityof images determined by the one or more layout templates. The generatingmodule 410 may automatically layout the plurality of images based on theone or more layout templates to generate the plurality of advertisementtemplate.

In some embodiments, the generating module 410 (e.g., the generatingunit) may access a plurality of information components corresponding theplurality of advertisement elements from the database. In someembodiments, the generating module 410 (e.g., the generating unit) mayaccess a plurality of information components in the layout templates. Anadvertisement element may correspond to an advertisement region of thelayout template. The generating module 410 (e.g., the generating unit)may determine the location of the advertisement element in theadvertisement template accordingly. In some embodiments, theadvertisement element may be located at a known location in the layouttemplate, for example, the top left corner of the layout template. Thenthe location of the advertisement element in the advertisement templatemay be known, i.e., the top left corner of the advertisement template.The generating module 410 (e.g., the generating unit) may insert theinformation components corresponding to the advertisement element intothe known location in the advertisement template. In some embodiments,the advertisement element is located at an unknown location in thelayout template. Then the location of the advertisement element in theadvertisement template may be determined according to coordinates of theadvertisement element in the layout template. The generating module 410(e.g., the generating unit) may insert the information componentscorresponding to the advertisement element into the determined locationin the advertisement template. The advertisement template may bedetermined according to an exemplary process 1000 illustrated in FIG. 10and described in detail below.

It should be noted that the above description of the process/method fordetermining a plurality of advertisement templates is provided for thepurpose of illustration, and is not intended to limit the scope of thepresent disclosure. For persons having ordinary skills in the art,multiple variations and modifications may be made under the teaching ofthe present disclosure. However, those variations and modifications donot depart from the scope of the present disclosure. For example, in902, the generating module 410 (e.g., the generating unit) may determinea template with different sizes from the layout templates of the fullcolumn, the banner, the small banner, the rectangle, the small verticalpicture, or the vertical picture. As another example, an advertisementregion of a layout template may correspond to one or more advertisementelements. One or more advertisement templates may be generated based onthe corresponding one or more advertisement elements in theadvertisement region and the layout template.

FIG. 10 is a flowchart illustrating an exemplary process and/or method1000 for determining an advertisement template according to someembodiments of the present disclosure. The process and/or method 1000may be executed by the online advertisement service system 100. Forexample, the process and/or method 1000 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the CPU 220 may accordingly be directed to perform theprocess and/or method 1000. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 10 anddescribed below is not intended to be limiting.

In 1001, the generating module 410 (e.g., the determination unit) maydetermine whether the location of an advertisement element is known in alayout template. For example, the location of the advertisement elementin the layout template may be the top left corner, the top right corner,the bottom left corner, the bottom right corner, the center, or thelike. In response to the determination that the location of theadvertisement element is not known in the layout template, thegenerating module 410 (e.g., the determination unit) may perform step1002.

In 1002, the generating module 410 (e.g., the determination unit) maydetermine the width and height of an information component correspondingto the advertisement element in the corresponding advertisementtemplate. FIGS. 11A and 11B show an exemplary information componentcorresponding to an advertisement element placed in a layout template1101 and a corresponding advertisement template 1103 respectivelyaccording to some embodiments of the present disclosure. As shown inFIG. 11A, the W represents the width of the layout template 1101. The Hrepresents the height of the layout template 1101. The w represents thewidth of the information component 1102 in the layout template. The hrepresents the height of the information component 1102 in the layouttemplate. As shown in FIG. 11B, the W_s represents the width of theadvertisement template 1103. The H_s represents the height of theadvertisement template 1103. The w_s represents the width of theinformation component 1104 in the advertisement template 1103. The h_srepresents the height of the information component 1104 in theadvertisement template 1103. In some embodiments, the width and heightof the layout template 1101 and the corresponding advertisement template1103 may be known. The width and height of the information component1102 in the layout template may be known. The width of the informationcomponent 1104 in the corresponding advertisement template may bedetermined according to Equation (6):

w_s=w*(W_s/W)  (6).

Moreover, the height of the information component 1104 in thecorresponding advertisement template may be determined according toEquation (7):

h_s=h*(w_s/w)  (7).

In 1003, the generating module 410 (e.g., the determination unit) maydetermine the coordinates of the information component in thecorresponding advertisement template. The coordinates of the informationcomponent in the layout template may be known. The generating module 410(e.g., the determination unit) may determine the coordinates of theinformation component in the corresponding template based on thecoordinates of the information component in the layout template. TakingFIGS. 11A and 11B as an example, the determination of the coordinates ofthe information component in the corresponding advertisement templatemay be described as follow. The top left coordinates of the informationcomponent in the layout template may be denoted as p(x, y). The top leftcoordinates of the information component in the correspondingadvertisement template may be denoted as p(x_s, y_s).

The generating module 410 (e.g., the determination unit) may determinethe center coordinates of the layout template C(x, y), wherein C(x)=W/2,C(y)=H/2.

The generating module 410 (e.g., the determination unit) may determinethe center coordinates of the information component in the correspondingadvertisement template c(x, y), wherein c(x)=x+w/2, c(y)=y+h/2.

The generating module 410 (e.g., the determination unit) may determine ahorizontal offset ratio of the center of the information component inthe layout template R(x) as Equation (8):

R(x)=c(x)/C(x)=(x+w/2)/(W/2)  (8).

The generating module 410 (e.g., the determination unit) may determine avertical offset ratio of the center of the information component in thelayout template R(y) as Equation (9):

R(y)=c(y)/C(y)=(y+h/2)/(H/2)  (9).

The generating module 410 (e.g., the determination unit) may determinethe center coordinates of the corresponding advertisement templateC(x_s, y_s), wherein C(x_s)=W_s/2, C(y_s)=H_s/2.

The generating module 410 (e.g., the determination unit) may determinethe center coordinates of the information component in the correspondingadvertisement template c(x_s, y_s).

The generating module 410 (e.g., the determination unit) may determine ahorizontal offset ratio of the center of the information component inthe corresponding advertisement template R(x_s) as Equation (10):

R(x_s)=c(x_s)/C(x_s)  (10).

The generating module 410 (e.g., the determination unit) may determine avertical offset ratio of the center of the information component in thecorresponding advertisement template R(y_s) as Equation (11):

R(y_s)=c(y_s)/C(y_s)  (11).

The horizontal offset ratio R(x_s) and the vertical offset ratio R(y_s)of the center of the information component in the advertisement templatemay be same with that in the layout template. For example,R(x_s)=R(x)=(x+w/2)/(W/2); and R(y_s)=R(y)=(y+h/2)/(H/2).

The horizontal coordinate of the center of the information component inthe corresponding advertisement template c(x_s) may be determinedaccording to Equation (12):

c(x_s)=C(x_s)*R(x_s)=W_s/2*((x+w/2)/(W/2))  (12).

The vertical coordinate of the center of the information component inthe corresponding advertisement template c(y_s) may be determinedaccording to Equation (13):

c(y_s)=C(y_s)*R(y_s)=H_s/2*((y+h/2)/(H/2))  (13).

The top left coordinates of the information component in thecorresponding advertisement template p(x_s, y_s) may be determined. Thehorizontal coordinate of the top left of the information component inthe corresponding advertisement template may be determined according toEquation (14):

p(x_s)=c(x_s)−w_s/2=W_s/2*((x+w/2)/(W/2))−w_s/2  (14).

The vertical coordinate of the top left of the information component inthe corresponding advertisement template may be determined according toEquation (15):

p(y_s)=c(y_s)−w_s/2=H_s/2*((y+h/2)/(H/2))−h_s/2  (15).

For example, the width of a layout template W is 300. The height of thelayout template H is 250. The width of a corresponding advertisementtemplate W_s is 285. The height of the corresponding advertisementtemplate H_s is 200. The width of an information component in the layouttemplate w is 135. The height of the information component in the layouttemplate h is 168. The top left coordinates of the information componentin the layout template p(x, y) are (157, 50). The width of theinformation component in the corresponding advertisement template w_smay be determined according to the Equation (6):

w_s=w*(W_s/W)=135*(285/300)=128.

The height of the information component in the correspondingadvertisement template h_s may be determined according to the Equation(7):

h_s=h*(w_s/w)=168*(128/135)=159.

The horizontal coordinate of the top left of the information componentin the corresponding advertisement template p(x_s) may be determinedaccording to Equation (14):

p(x_s)=W_s/2*((x+w/2)/(W/2))−w_s/2=285/2*((157+135/2)/(300/2))−128/2=149.

The vertical coordinate of the top left of the information component inthe corresponding advertisement template p(y_s) may be determinedaccording to Equation (15):

p(y_s)=H_s/2*((y+h/2)/(H/2))−h_s/2=200/2*((50+168/2)/(250/2))−159/2=28.

In 1004, the generating module 410 (e.g., the generating unit) maydetermine the advertisement template based on the width, the height, andthe coordinates of the information component. The width and the heightof the information component may determine a size of the informationcomponent in the corresponding advertisement template. The generatingmodule 410 (e.g., the generating unit) may process the informationcomponent according to the determined size. The coordinates of theinformation component may determine the location of the informationcomponent in the corresponding advertisement template. Then thegenerating module 410 (e.g., the generating unit) may insert theprocessed information component into the corresponding region of thecorresponding advertisement template to generate the advertisementtemplate.

Referring back to step 1001, in response to the determination that thelocation of the advertisement element is known in the layout template,the generating module 410 (e.g., the determination unit) may performstep 1005. In 1005, the generating module 410 (e.g., the generatingunit) may determine the advertisement template based on a typesettingmethod. The typesetting method may include a top alignment, a bottomalignment, a left alignment, a right alignment, a top left alignment, atop right alignment, a bottom left alignment, a bottom right alignment,a horizontal center alignment, a vertical center alignment, an absolutecenter alignment (horizontal center alignment and vertical centeralignment), the wide of the advertisement element same with theadvertisement template, the height of the advertisement element samewith the advertisement template, the area of the advertisement elementsame with the advertisement template, or the like, or any combinationthereof. After determining the location of the advertisement element inthe layout template, the generating module 410 (e.g., the generatingunit) may insert the information components corresponding to theadvertisement element into the advertisement region using thetypesetting method based on the determined location in the advertisementtemplate. The generating module 410 (e.g., the determination unit) maydetermine the advertisement template by inserting the informationcomponents into the corresponding regions of the advertisement template.

It should be noted that the above description of the process/method fordetermining the advertisement template is provided for the purpose ofillustration, and is not intended to limit the scope of the presentdisclosure. For persons having ordinary skills in the art, multiplevariations and modifications may be made under the teaching of thepresent disclosure. However, those variations and modifications do notdepart from the scope of the present disclosure. For example, afine-tuned step and a preview step may be added after generating theadvertisement template. The generation module 410 may fine-tune theinformation component in the advertisement template to reach optimaldisplay. The generation module 410 may preview the display effect and toassist the fine-tuned step to fine-tune the information component.

In some embodiments, the generation module 410 may process theinformation components in the ad generation request before inserting theinformation components into the one or more advertisement templates. Forillustration purpose, an image may be an exemplary information componentin the ad generation request to be processed as described in FIG. 12.

FIG. 12 is a flowchart illustrating an exemplary process and/or method1200 for processing an image (i.e., an information component) in an adgeneration request according to some embodiment of the presentdisclosure. The process and/or method 1200 may be executed by the onlineadvertisement service system 100. For example, the process and/or method1200 may be implemented as a set of instructions (e.g., an application)stored in the storage 150. The CPU 220 may execute the set ofinstructions, and when executing the instructions, the processor mayaccordingly be directed to perform the process and/or method 1200. Theoperations of the illustrated process and/or method presented below areintended to be illustrative. In some embodiments, the process and/ormethod may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the process and/ormethod as illustrated in FIG. 12 and described below is not intended tobe limiting.

In 1201, the generating module 410 (e.g., the determination unit) maydetermine one or more size scaling ratios of an image. In someembodiments, the image may include an image in an ad generation requestreceived from the ad generation requester or the company which transmitsthe ad generation request.

In some embodiments, the generating module 410 may determine the one ormore size scaling ratios of the image based the areas of the layouts inone or more advertisement templates and the area of the image. Forexample, the area s(n) of a layout n may be determined ass(n)=W(n)*H(n), wherein W(n) represents the width W of the layout, n andH(n) represent the height H of the layout n. The area s(p) of the imagep may be determined as s(p)=W(p)*H(p), where W(p) represents the width Wof the image p, and H(p) represents the height H of the image p.

The generating module 410 may determine a size scaling ratio r(s) of theimage p based on Equation (16) as follows:

r(s)=s(n)/s(p)  (16).

In 1202, the generating module 410 (e.g., the determination unit) maydetermine one or more spatial compression ratios of the image. In someembodiments, the one or more spatial compression ratios of the image maybe determined based on the maximum space occupations of the layouts inone or more advertisement templates and the maximum space occupation ofthe image. The maximum space occupation may be a maximum space that animage or a layout occupies.

For example, a spatial compression ratio r(k) of the image p may bedetermined by Equation (17):

r(k)=100*k(n)/k(p)  (17),

wherein k(n) represents the maximum space occupation of the layout n,and k(p) represents the maximum space occupation of the image p.

The maximum space occupation of a layout may be determined based on themaximum space occupation of an advertisement template and an areaoccupation of the layout to the advertisement template. For example, themaximum space occupation k(n) may be determined based on k(n)=k(m)*r(n),wherein k(m) represents the maximum space occupation of an advertisementtemplate m, and r(n) represents an area occupation of the layout n tothe one or more advertisement templates.

In some embodiments, the generating module 410 may predetermine aplurality of maximum space occupations and/or a plurality of compressionlevels based on the areas of a plurality of advertisement templates. Forexample, the generation module 410 may classify the maximum spaceoccupations and/or the compression levels into four categories accordingto areas of the advertisement templates. The exemplary maximum spaceoccupation k and/or the compression level I with respect to eachcategory may be shown in Table 2.

TABLE 2 area of an advertisement template (s) 64800 ≤ 43200 ≤ s ≥ 108000s < 108000 s < 64800 s < 43200 maximum 250K 200K 150K 100K spaceoccupation (k) compression level 1 level 2 level 3 level 4 level (l)

The generating module 410 may determine the maximum space occupationk(m) and the compression level I(m) of the advertisement template m fromTable 2 based on the area of the advertisement template.

The area occupation of a layout may be determined based on the area ofthe layout and the area of an advertisement template. For example, thegenerating module 410 may determine the area occupation r(n) of thelayout n as r(n)=s(n)/s(m). The area s(n) of the layout n may bedetermined according to s(n)=W(n)*H(n), wherein W(n) represents thewidth W of the layout n and H(n) represents the height H of the layoutn. The area s(m) of an advertisement template m may be determinedaccording to s(m)=W(m)*H(m), wherein W(m) represents the width W of theadvertisement template m, and H(m) represents the height H of theadvertisement template m.

In 1203, the generating module 410 (e.g., the determination unit) maygenerate one or more processed images for the image as the informationcomponent to be generated according to the determined one or more sizescaling ratios and the determined one or more spatial compressionratios. In some embodiments, the generating module 410 may scale and/orcompress the image based on the one or more size scaling ratios and/orthe one or more spatial compression ratios to generate one or moreprocessed images. For example, the generating module 410 may scale animage in response to the determination that the size scaling ratio r(s)of the image determined by Equation (16) is less than 1. The generatingmodule 410 may not scale the image in response to the determination thatthe size scaling ratio r(s) of the image determined by Equation (16) islarger than or equal to 1. As another example, the generating module 410may compress an image in response to the determination that the spatialcompression ratio r(k) of the image determined by Equation (17) is lessthan 100. The generating module 410 may not compress the image inresponse to the determination that the spatial compression ratio r(k) ofthe image determined by Equation (17) is larger than or equal to 1.

In some embodiments, the generating module 410 may scale and/or compressthe image according to an image processing application. Exemplary imageprocessing application may include a pngquant application, animagemagick application, etc.

In some embodiments, the generating module 410 may determine the one ormore processed images based on the following process and/or method.First, the generating module 410 may determine a format of the image.For example, the generating module 410 may determine the format of theimage by invoking a function “getimagsize” of the Professional HypertextPreprocessor (PHP). The format of the image may include a Bitmap format(BMP), a Graphics Interchange Format (GIF), a Joint Photographic ExpertsGroup (JPEP), a Portable Network Graphics (PNG), a Tag Image File Format(TIFF), or the like, or any combination thereof.

Second, the generating module 410 may determine a name of the imagebased on the format and the one or more compression levels. For example,the format of the image is JPEG, and the compression level is 1. Thegenerating module 410 may determine the name of the image as “p_1.jpg”.

Third, the generating module 410 may scale the image based on thecorresponding size scaling ratio r(s) of the image to generate the firstimage. In some embodiments, the generating module 410 may determine thename of the first image based on the format. For example, if the formatof the image is JPEG, the generating module 410 may determine the nameof the first image as “p_resize.jpg”. In some embodiments, thegenerating module 410 may invoke a command of the application to scalethe image. For example, the generating module 410 may invoke a “convert”command of the imagemagick application. The “convert” command mayinclude a code of “/user/sbin/convert./p.jpg-resizewidth(n)*height(n)./p_resize.jpg”.

Fourth, the generating module 410 may compress the first image based onthe spatial compression ratio r(k) of the corresponding image togenerate a processed image. In some embodiments, the generating module410 may invoke a command of the application to compress the first image.For example, the generating module 410 may invoke a “convert” command ofthe application. The “convert” command operation on a JPEG image mayinclude a code of “/user/bin/convert-qualityr(k)./p_resize.jpg./p_1.jpg”. The “convert” command to a PNG image mayinclude a code of“/user/sbin/pngquant./p_resize.png-quanlity=˜r(k)−f-output=./p_1.png”.

In 1204, the generating module 410 may store the one or more processedimages. For example, the generating module 410 may store the one or moreprocessed images in a storage medium (e.g., the storage 150, the storage150, the storage 390). In some embodiments, the generating module 410may access the stored one or more processed images to determine aprocessed image based on the image to be dispatched and thecorresponding advertisement template. For example, the image to bedispatched in the ad generation request may be inserted in anadvertisement template 1. The compress level of the advertisementtemplate 1 is 2. The generating module 410 may access the one or moreprocessed images to output a processed image corresponding to theadvertisement template with a compression level 2.

It should be noted that the above description of the process/method forprocessing the image in the ad generation request is provided for thepurpose of illustration, and is not intended to limit the scope of thepresent disclosure. For persons having ordinary skills in the art,multiple variations and modifications may be made under the teaching ofthe present disclosure. However, those variations and modifications donot depart from the scope of the present disclosure.

FIG. 13 is a flowchart illustrating an exemplary process for dispatchingads according to some embodiments of the present disclosure. The processand/or method 1300 may be executed by the online advertisement servicesystem 100. For example, the process and/or method 1300 may beimplemented as a set of instructions (e.g., an application) stored inthe storage 150. The CPU 220 may execute the set of instructions, andwhen executing the instructions, the processor may accordingly bedirected to perform the process and/or method 1300. The operations ofthe illustrated process and/or method presented below are intended to beillustrative. In some embodiments, the process and/or method may beaccomplished with one or more additional operations not described,and/or without one or more of the operations discussed. Additionally,the order in which the operations of the process and/or method asillustrated in FIG. 13 and described below is not intended to belimiting.

In 1301, the dispatch module 420 may receive a request for displaying anad at a user terminal. In some embodiments, the request may be anelectrical signal transmitted from the user terminal via, for example,the network 120. The user terminal may include a mobile phone, apersonal digital assistance (PDA), a gaming device, a navigation device,a point of sale (POS) device, a laptop, a tablet computer, a desktop, orthe like, or any combination thereof. The transmission may be wired orwireless. The electrical signal may be generated by the user terminal inresponse to opening a web page by a user. The web page may be a landingpage designated by a company. When the landing page is opened, a scriptcode embedded in the landing page may direct the user terminal togenerate the electrical signal. Exemplary script code may include aspcode, PHP code, asp.net code, javascript code, jquery code, VBScriptcode, dos code, etc. For example, a user may click an icon on a displayof the user terminal to open a web page. The web page may have an adslot at a corner of the web page. The codes embedded in the page maydirect the user terminal to generate the request signal.

In some embodiments, the request may be an electrical signal transmittedfrom a third party. The third party may be a service provider associatedwith the landing page. For example, a user opens a web page of The NewYork Times on Google browser. The New York Times and Google may beregarded as two service providers. Merely by way of an example, theservice provider The New York Times may generate a request fordisplaying an ad according to information collected from the userterminal and transmit the request to the dispatch module 420.

In some embodiments, the request for displaying an ad may includevarious ad information for assisting a determination of one or more adsto be displayed at the user terminal. For example, the ad informationmay include keyword information, size information of one or moreadvertisement slots on a web page, a trigger condition for displaying anad at the user terminal, etc. The keyword information may include thekeywords that the user entered to find the landing page. The sizeinformation of one or more ad slots may include the widths and heightsof the one or more ad slots. The trigger condition may be the conditionsthat when satisfied, the dispatch module 420 may determine one or moreads based on the trigger condition. The trigger condition may include atime trigger, a location trigger, a weather trigger, a populationtrigger, a preference trigger, a label trigger, or the like, or thecombination thereof. In some embodiments, the displaying of an ad mayinclude displaying an ad at a site of a landing page at the userterminal, for example, a corner of the landing page.

In 1302, the dispatch module 420 may obtain one or more ads based on therequest. In some embodiments, the obtaining may include selecting theone or more ads from an ads database. The ads database may beconstructed based on related approaches disclosed in the presentdisclosure (e.g., in the description of the method and/or process 600 inFIG. 6). In some embodiments, the dispatch module 420 may determine theone or more ads based on the ad information included in the request. Forexample, in process 1400, the dispatch module 420 may determine the oneor more ads based on the keyword information. In process 1500, thedispatch module 420 may determine the one or more ads based on the sizeinformation of one or more advertisement slots on a web page. In process1600, the dispatch module 420 may determine the one or more ads based onthe trigger condition. In some embodiments, two or more of the process1400, process 1500, and process 1600 may be implemented by the dispatchmodule 420 to determine the one or more ads simultaneously. For example,the dispatch module 420 may firstly determine a plurality of candidateads based on the keyword information. The dispatch module 420 may thendetermine the one or more ads from the candidate ads based on the sizeinformation of one or more advertisement slots on a web page.

In some embodiments, the dispatching may also take a data analysis ofads into consideration. The data analysis of dispatched ads may includedetermining at least one of a click-through rate, a number ofimpressions, or a conversion rate for the ads. In some embodiments, thedispatching module 420 may determine a plurality of candidate ads in1302, and then determine one or more ads from the plurality of candidateads based on the click-through rate of the candidate ads. For example,the candidate ads with click-through rate greater than a threshold maybe determined to be transmitted to the user terminal.

In 1303, the dispatch module 420 may dispatch the obtained one or moreads to the user terminal via the network. The transmission may be wiredor wireless. Alternatively, the dispatch module 420 may dispatch thedetermined one or more ads to the third party. The third party mayfurther transmit the one or more ads to the user terminal.

In some embodiments, the determined one or more ads may be transmittedto the user terminal at one time. For example, five ads are determinedto be displayed on the user terminal. The five ads may be transmitted tothe user terminal simultaneously by the dispatch module 420 anddisplayed dynamically by the user terminal. In some embodiments, thedetermined one or more ads may be transmitted periodically to the userterminal for display. For example, five ads are determined to bedisplayed on the user terminal. One ad among the five ads may betransmitted to the user terminal firstly. Then after a predeterminedtime interval, another ad may be transmitted to the user terminal tosubstitute the first ad if the first ad is not clicked within thepredetermined time interval.

In some embodiments, the dispatch module 420 may transmit, via thenetwork 120, the first plurality of ads to a first group of userterminals and a second plurality of ads to a second group of userterminals. The first group of user terminals and the second group ofuser terminals may or may not have one or more common user terminals.For example, The dispatch module 420 may transmit, via a network (e.g.,the network 120), the first plurality of ads to the first group of userterminals (e.g., user terminals 140). The determination module 430 maydetermine at least one of a click-through rate, a number of impressions,and/or a conversion rate for the first plurality of ads. Thedetermination module 430 may further analyze the at least one of theclick-through rate, the number of impressions, or the conversion rate ofthe first plurality of ads. The generation module 410 may receive theperformance data related to the first plurality of ads (e.g., thedetermined click-through rate, number of impressions, and/or aconversion rate for the first plurality of ads) and/or the analysisresults obtained by the determination module 430. The generation module410 may also generate an ad based, at least in part on the performancedata of one of the first plurality of ads (or the information componentsand/or the advertisement included therein). For instance, the generationmodule 410 may generate a new ad including the information component(s)that has the highest ranking among all the information componentsincluded in the first plurality of ads, which may be determined by thedetermination module 430 according to the performance data of the firstplurality ads. The dispatch module 420 may receive the new ad generatedby the generation module 420 and dispatch the new ad to the second groupof user terminals.

FIG. 14 is a flowchart illustrating an exemplary process for determiningone or more ads based on the keyword information according to someembodiments of the present disclosure. The process and/or method 1400may be executed by the online advertisement service system 100. Forexample, the process and/or method 1400 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the processor may accordingly be directed to perform theprocess and/or method 1400. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 14 anddescribed below is not intended to be limiting. In some embodiments,step 1302 may be performed according to the process 1400 for determiningone or more ads based on the request (e.g., the keyword informationincluded in the request).

In 1401, the dispatch module 420 may receive keyword information from auser terminal. In some embodiments, the keyword information may includethe keywords entered by the user via the user terminal. The keywords mayinclude various types including a text, a sound, an image, a video, etc.In some embodiments, the keywords in various formats may be a word, aphrase, a sentence, or the like, or a combination thereof. In someembodiments, the keywords may be provided by the landing page. Forexample, a script code may be embedded in the landing page for keywordsextraction. When the user visits the landing page through clicking a webpage link as a searching result based on one or more keywords, theembedded codes may direct the user terminal to extract the keywords. Theuser terminal may then transmit the request including information aboutthe extracted keywords. Alternatively, the third party may generate arequest according to the keyword information from a user terminal andtransmit the request including information about the extracted keywordsto the dispatch module 420.

In 1402, the dispatch module 420 may determine one or more labels basedon the keywords. The labels may represent the groups associated with thekeywords. The labels may also be bridges between the keywords and theone or more ads to be determined. For example, a keyword may beassociated with one or more labels. A label may be associated with oneor more ads. Thus, the keyword may be associated with the one or moreads. In some embodiments, a keyword may be associated with one or morelabels. For example, a keyword “apple” may correspond to a label P₁representing a kind of fruit, a label P₂ representing a company, a labelP₃ representing a movie, etc. Alternatively or additionally, a label maycorrespond to one or more keywords. For example, a label “taxi” mayassociate with keywords such as “DiDi,” “KuaiDi,” “Uber,” etc. In someembodiments, the relationship between the labels and the keywords may bedetermined in advance by semantic analysis based on one or more keywordsprovided by the company requesting for dispatching ads. The keywords mayinclude a word, a phrase, a sentence, etc. The semantic analysis mayinclude Latent semantic analysis, Latent Dirichlet allocation, etc. Thesemantic analysis may be performed based on a database. The database mayinclude an elementary-term database, a general-term database, aspecialized-term database, a private-term database, etc. For example,according to keywords such as “LOL,” “Lee Sin,” “Yasso,” and “Summoner'sRift,” a label “League of Legends” may be determined to correspond tothe keywords.

In 1403, the dispatch module 420 may determine a plurality of candidateads according to the labels. In some embodiments, dispatch module 420may select the plurality of candidate ads from the ad database (e.g.,determined by the method and/or process 600 in FIG. 6) based on thelabels. As explained above, a label may be associated with one or moreads. The relationship between the labels and the ads may bepredetermined. The one or more ads may be complete ads, the elementsincluded in the ads, or the like, or a combination thereof. The elementsmay include a text, a product image, a logo image, or the like.

In some embodiments, the dispatch module 420 may determine one or morecorrelation parameters between a label determined in 1402 and thecorresponding candidate ads. The correlation parameters may represent acorrelation between a label and an ad. For example, a label A may beassociated with an ad N1, an ad N2, and an ad N3. Three correlationparameters of the label A may be determined by the dispatch module 420for the ad N1, the ad N2, and the ad N3, respectively. In someembodiments, the correlation parameters may be initialized as 1. Thecorrelation parameter of an ad may be adjusted according to aClick-through Rate (CTR) of the ad. For example, the data analysismodule 440 may perform a statistical analysis on the CTR of an ad underdifferent labels and adjust correlation parameters of the ad with thedifferent labels.

In 1404, the dispatch module 420 may determine a matching probability ofat least one of the plurality of candidate ads being associated with thelabels. The matching probability used herein refers to a probability ofan ad being associated with a keyword. For example, the dispatch module420 may determine the matching probability based on correlationparameters of the plurality of ads being associated with the labels.Merely by way of example, the dispatch module 420 may determine that akeyword may be associated with a label B, a label C, and a label D. Thedispatch module 420 may determine that the label B may be associatedwith an ad N4 (i.e., a candidate ad) with a correlation parameter of 5.The dispatch module 420 may also determine that the label C may beassociated with the ad N4 with a correlation parameter of 2, an ad N5with a correlation parameter of 3, and an ad N6 with a correlationparameter of 4. The dispatch module 420 may further determine that thelabel D may be associated with the ad N6 with a correlation parameterof 1. Then the correlation parameter of an ad with the keyword may bedetermined by the sum of correlation parameters of an ad with each ofassociated labels. For example, the correlation parameter of the ad N4with the keyword may be determined by the sum of correlation parametersof the ad N4 with labels B, C, and D. As such, the correlation parameterof the ad N4 with the keyword may be determined to be 7. The correlationparameter of the ad N5 with the keyword may be determined to be 3. Thecorrelation parameter of the ad N6 with the keyword may be determined tobe 5. Then the matching probability of an ad with the keyword may bedetermined based on the correlation parameters. For example, thematching probability of the ad N4 with the keyword may be determined bydetermining a ratio of the correlation parameter of the ad N4 with thekeyword to the sum of the correlation parameters of the ads N4, N5, andN6 with the keyword. As such, the matching probability of the ad N4 withthe keyword may be determined to be 7/15. The matching probability ofthe ad N5 with the keyword may be determined to be 3/15. The matchingprobability of the ad N6 with the keyword may be determined to be 5/15.

In 1405, the dispatch module 420 may determine one or more ads among theplurality of candidate ads based on the matching probability. In someembodiments, the dispatch module 420 may determine the ad with thehighest matching probabilities of being associated with the keywords inthe candidate ads as the ad to be displayed at the user terminal. Insome embodiments, the dispatch module 420 may rank the matchingprobabilities of the candidate ads with the keywords and determine apart of the candidate ads as the ads to be displayed at the userterminal based on the ranking. For example, the top three ads in theranking may be determined as the ads to be displayed at the userterminal.

It should be noted that the above description of the process/method forgenerating the one or more ads is provided for the purpose ofillustration, and is not intended to limit the scope of the presentdisclosure. For persons having ordinary skills in the art, multiplevariations and modifications may be made under the teaching of thepresent disclosure. However, those variations and modifications do notdepart from the scope of the present disclosure. For example, theoperations 1404 and 1405 may be combined. For another example, operation1404 may be omitted. As an example, there is only one candidate addetermined in 1403.

FIG. 15 is a flowchart illustrating an exemplary process for determiningone or more ads based on the size information of advertisement slotsaccording to some embodiments of the present disclosure. The processand/or method 1500 may be executed by the online advertisement servicesystem 100. For example, the process and/or method 1500 may beimplemented as a set of instructions (e.g., an application) stored inthe storage 150. The CPU 220 may execute the set of instructions, andwhen executing the instructions, the processor may accordingly bedirected to perform the process and/or method 1500. The operations ofthe illustrated process and/or method presented below are intended to beillustrative. In some embodiments, the process and/or method may beaccomplished with one or more additional operations not described,and/or without one or more of the operations discussed. Additionally,the order in which the operations of the process and/or method asillustrated in FIG. 15 and described below is not intended to belimiting. In some embodiments, step 1302 of process 1300 may beperformed according to the process 1500.

In 1501, the dispatch module 420 may receive a request including sizeinformation of one or more advertisement slots on a web page (alsoreferred as ad slots). The request may be generated by a landing pagebased on a script code encoded in the landing page. Exemplary scriptcode may include asp code, PHP code, asp.net code, javascript code,jquery code, VBScript code, dos code, etc. An ad slot may be used todisplay one or more ads for the user on the visited website. In someembodiments, the ad slot may be rectangular, and the size information ofthe ad slot may include a width and a height of the ad slot. The heightof the ad slot may refer to the length of the side perpendicular to thehorizontal plane. The width of the ad slot may refer to the length ofthe side parallel to the horizontal plane. For example, a rectangular adslot on a website may have four sides. The length of the upper side andthe lower side may be referred to as the width of the rectangular adslot. The length of the left side and the right side may be referred toas the height of the square ad slot. The ad slot may be a predeterminedad slot. The predetermined ad slot may be an area of a website that auser visits. The area may locate near one of the corners of the website,or on a black area of the website. In some embodiments, thepredetermined ad slot may be a script encoded in the website.

In 1502, the dispatch module 420 may determine an aspect ratio for eachof the one or more advertisement slots on a web page. The aspect ratiorefers to a ratio of the width to the height of the ad. In someembodiments, the dispatch module 420 may determine the aspect ratio ofan ad slot by dividing the width of the ad slot by the height of the adslot, shown in Equation (18):

r _(a) =w _(a) /h _(a),  (18),

wherein w_(a) refers to the width of the advertisement slot, h_(a)refers to the height of the advertisement slot, and r_(a) refers to theaspect ratio of the advertisement slot.

In 1503, the dispatch module 420 may obtain a plurality of layouttemplates. A layout template may represent a type of ad specificationincluding, for example, size information. The layout template may bestored in a layout template database included in the storage of thepresent system (in, e.g., the storage 150, storage 150, storage 390). Insome embodiments, a layout template may represent a plurality of adswith the same specification. In some embodiments, the dispatch module420 may obtain the plurality of layout templates from a templatedatabase stored in the storage 150. Detail descriptions about thetemplate database may be found elsewhere in this disclosure (e.g., FIG.9 and the relevant description thereof). The plurality of layouttemplates may include a full column template, a banner template, a smallbanner template, a rectangle template, a small vertical template, avertical template, etc. The plurality of layout templates may havevarious aspect ratios such as 10 to 3, 4 to 10, 9 to 1, etc. Detailexamples for parameters of the layout template may be found elsewhere inthis disclosure (e.g., FIG. 9 and the relevant description thereof).

In 1504, the dispatch module 420 may determine an aspect ratio for eachlayout template. In some embodiments, the dispatch module 420 maydetermine the aspect ratio of one of the layout templates by dividingthe width of the layout template by the height of the layout template,shown in Equation (19):

r _(m) =w _(m) /h _(m),  (19)

wherein w_(m) refers to the width of the layout template, h_(m) refersto the height of the layout template, and r_(m) refers to the aspectratio of the layout template. In some embodiments, the dispatch module420 may determine the aspect ratios of the layout templates according toa look-up table recording the corresponding aspect ratios. The look-uptable may be predetermined by the generating module 410 during layouttemplate making process (e.g., FIG. 9), and stored in the storage 150.

In 1505, for each layout template, the dispatch module 420 may determinea similarity ratio between the layout template and the advertisementslot. A similarity ratio may be used to represent the similarity betweena layout template and an ad slot. The similarity ratio may be determinedbased on the aspect ratio of the layout template and the aspect ratio ofthe ad slot. For example, the dispatch module 420 may determine a ratioof the aspect ratio of the layout template to the aspect ratio of theadvertisement slot as the similarity ratio, shown in Equation (20):

R=r _(m) /r _(a),  (20),

wherein, r_(m) refers to the aspect ratio of the layout template, r_(a)refers to the aspect ratio of the advertisement slot, and R refers tothe similarity ratio.

In 1506, the dispatching module 420 may determine a layout templatebased on the similarity ratios. In some embodiments, the dispatch module420 may determine a similarity value based on the similarity ratios fordetermining a target layout template. The target layout template mayhave the closest similarity ratio with the ad slot. For example, thedispatch module 420 may compare the similarity ratios with 1. Inresponse to the determination that the similarity ratio R is greaterthan 1, the dispatch module 420 may determine the correspondingsimilarity value by transforming the similarity ratio R into areciprocal value 1/R. In response to the determination that thesimilarity ratio R is not greater than 1, the dispatch module 420 maydetermine the corresponding similarity value as the similarity ratio R.In some embodiments, the dispatch module 420 may determine a layouttemplate with the similarity value closest to 1 as the target layouttemplate. In some embodiments, the dispatch module 420 may perform ascaling on the target layout template to fit the size information of theadvertisement slot. For example, if the similarity value of the targettemplate is equal to 1 with respect to the advertisement slot, thedispatch module 420 may perform a uniform scaling based on the samescaling ratio. The scaling ratio may be determined by Equation (21):

S _(W) =S _(h) =w _(a) /w _(m)  (21),

wherein S_(w) refers to a scaling ratio of the width of the targetlayout template, S_(h) refers to a scaling ratio of the height of thetarget layout template, w_(a) refers to the width of the advertisementslot, and w_(m) refers to the width of the target layout template. Foranother example, if the similarity value of the target template is lessthan 1 with respect to the advertisement slot, the dispatch module 420may perform a uniform scaling on the width of the target layout templatebased on a width scaling ratio. The dispatch module 420 may perform ascaling on the height of the target layout template based on a heightscaling ratio. The width and the height scaling ratios may berespectively determined by Equations (22) and (23):

S _(w) =w _(a) /w _(m)  (22),

S _(h) =h _(a) /h _(m)  (23),

wherein S_(w) refers to a width scaling ratio of the target layouttemplate, S_(h) refers to a height scaling ratio of the target layouttemplate, we refers to the width of an advertisement slot, w_(m) refersto the width of the target layout template, h_(a) refers to the heightof the advertisement slot, and h_(m) refers to the height of the targetlayout template. In some embodiments, the dispatch module 420 may alsoscale the advertisements associated with the layout template.

In 1507, the dispatch module 420 may determine one or moreadvertisements based on the determined target layout template. Asdisclosed elsewhere in the present disclosure, a layout template maycorrespond to one or more advertisements. The dispatch module 420 maydetermine a part or all of advertisements that corresponding to thetarget layout template together with other dispatching approaches (e.g.,the process 1400).

It should be noted that the above description of the process/method forgenerating the one or more ads is provided for the purpose ofillustration, and is not intended to limit the scope of the presentdisclosure. For persons having ordinary skills in the art, multiplevariations and modifications may be made under the teaching of thepresent disclosure. However, those variations and modifications do notdepart from the scope of the present disclosure. For example, theoperation 1503 and the operation 1504 may be combined into oneoperation.

FIG. 16 is a flowchart illustrating an exemplary process for determininga trigger condition for an advertisement element according to someembodiments of the present disclosure. The process and/or method 1600may be executed by the online advertisement service system 100. Forexample, the process and/or method 1600 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the processor may accordingly be directed to perform theprocess and/or method 1600. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 16 anddescribed below is not intended to be limiting. In some embodiments,step 1302 of process 1300 may be performed for determining one or moreimages (i.e., a type of advertisement elements) according to the process1600.

In some embodiments, the advertisement element may refer to the dataportion of an advertisement. Exemplary advertisement elements mayinclude a logo element, a product element, a copywrite element, abackground element, a model element, a button element, an ornamentelement, or the like, or a combination thereof. One or moreadvertisement elements may consist an advertisement. The triggercondition may refer to conditions directing to an ad. When the triggercondition is satisfied, the dispatch module 420 may identify thecorresponding ad. Exemplary trigger condition may include a timetrigger, a location trigger, a weather trigger, a population trigger, apreference trigger, a label trigger, or the like, or a combinationthereof.

In some embodiments, the dispatch module 420 may determine the one ormore ads based on the trigger condition. The correlations between thetrigger condition and the advertisement elements used to construct theone or more ads may be pre-determined by implementing the process 1600.

In 1601, the dispatch module 420 may obtain an advertisement design. Theadvertisement design may be an editable ad file, including a bitmap, avector graph, or the like, or a combination thereof. The bitmap mayinclude a PhotoShop file, a PowerPoint file, a Krita file, etc. Thevector graph may include a CoreIDRAW file, a RealDraw file, a YouiDrawfile, an Adobe Illustrator file, a Visio file, etc. The advertisementdesign may include a plurality of advertisement elements. In someembodiments, the advertisement design may correspond to one or moreadvertisements by substituting one or more advertisement elements in anadvertisement by one or more other advertisement elements. For example,the advertisement design may correspond to a series of advertisementschemes for a product or a service. The series of advertisement schemesmay be generated by substituting one or more advertisement elements inone or more advertisements by other advertisement elements. For example,the first advertisement with a three-dimensional view of a product maybe substituted by a front view of the product to generate a secondadvertisement with a front view of the product. In this way, a series ofadvertisements containing the three-dimensional view, the front view,the back view, the side view, the top view and the bottom view of theproduct may be generated. In some embodiments, the dispatch module 420may obtain the advertisement design from the generating module 410, thedata analysis module 440 or the storage 150.

In 1602, the dispatch module 420 may decompose the advertisement designinto a plurality of advertisement elements. The advertisement elementsmay be classified in terms of content, e.g., a logo element, a productelement, a copywrite element, a background element, a model element, abutton element, an ornament element, or the like, or a combinationthereof. In some embodiments, the advertisement elements may beclassified in terms of format, e.g., a layer element. The layer elementmay include size information of the layer element, location informationof the layer element in the advertisement design.

In some embodiments, the dispatch module 420 may decompose theadvertisement design based on the layers. For example, the dispatchmodule 420 may decompose the advertisement design into a plurality oflayers. In some embodiments, the dispatch module 420 may decompose theadvertisement design according to image segmentation methods. The imagesegmentation methods may include a region-based segmentation method, anedge-based segmentation method, or the like, or a combination thereof.For example, the dispatch module 420 may decompose the advertisementdesign into a plurality of advertisement elements according to theregion-based segmentation method.

In some embodiments, the dispatch module 420 may transform the format ofeach of the decomposed elements into a web page format. The format ofthe decomposed elements may include PSD format, EPS format, JPEG format,jpg format, BMP format, png format, TIFF format, PCX format, VCD format,VSDX format, etc. The web page format may include HTML format, ASPformat, JSP format, PHP format, ASPX format, JSP X format, CGI format,etc. The HTML web page format may include HTML format, DHTML format,XHTML format, SHTM format, SHTML format, etc. For example, the dispatchmodule 420 may transform the PSD format of an advertisement element intoan html5 format. The html5 format is the fifth generation HTML standardagreement.

In some embodiments, the dispatch module 420 may determine a label foreach of the advertisement elements. The label may be a name for one ormore advertisement elements. For example, the dispatch module 420 maylabel the one or more advertisement elements configured to show productimages as “product.”

In 1603, the dispatch module 420 may determine one or more images foreach of the advertisement elements. An advertisement element maycorrespond to one or more images based on the topics or the content ofthe images. For example, the dispatch module 420 may determine imageswith product images for a product element.

In 1604, the dispatch module 420 may determine a trigger condition foreach image. The trigger condition may include a time trigger, a locationtrigger, a weather trigger, a population trigger, a preference trigger,a label trigger, or the like, or a combination thereof. The time triggermay be a time condition directing to an ad. Exemplary time triggercondition may include a day time trigger, a night time trigger, amorning time trigger, a noontime trigger, or the like, or a combinationthereof. The location trigger may be a location condition directing toan ad. Exemplary location trigger condition may include a countrytrigger, a city trigger, a home trigger, an office trigger, a publiclocation trigger, or the like, or a combination thereof. The weathertrigger may be a weather condition directing to an ad. Exemplary weathertrigger condition may include a sunny day trigger, a raining daytrigger, a windy day trigger, a snowy day trigger, a summer day trigger,a winter day trigger, or the like, or a combination thereof. Thepopulation trigger may be a population condition directing to an ad.Exemplary population trigger condition may include a teenager trigger,an adult people trigger, an aged people trigger, a male trigger, afemale trigger, or the like, or a combination thereof. The preferencetrigger may be a preference condition directing to an ad. Exemplarypreference trigger condition may include a color preference trigger, astar preference trigger, a field preference trigger, or the like, or acombination thereof. The label trigger may be a content implicationdirecting to an ad. Exemplary label trigger condition may include aspecific label. For example, a female trigger and/or a star preferencetrigger may be determined for one or more images with male models. Whenthe user is an adult woman, the images with male models may bedetermined as candidate ads for displaying on the user terminal. Foranother example, a teenager trigger and/or a snowy trigger may bedetermined for one or more images with a thick winter pant forteenagers. When a teenage user wants to buy pants, and the weather issnowy, the images with thick winter pants for teenagers may bedetermined as candidate ads for displaying on the user terminal. Foranother example, a noontime trigger, an office trigger and/or a summerday trigger may be determined for one or more images with a set mealcontaining a cold drink. When a user searches a take-out on the websiteat the noon of a hot summer day, the images with a set meal containing acold drink may be determined as candidate ads for displaying on the userterminal.

In some embodiments, the dispatch module 420 may determine the triggercondition for an image based on statistical data. The statistical datamay include various information when an ad or a type of ad is presentedto the user. The various information may include time information,location information, weather information, user information, CTRinformation, or the like, or a combination thereof. The statistical datamay be obtained from the data analysis module 440.

In some embodiments, the dispatch module 420 may receive a request fordisplaying an ad at a user terminal. The request may include variousinformation that a landing page records when the user visits the landingpage. The various information may include time information, locationinformation, weather information, user information, CTR information, orthe like, or a combination thereof. In some embodiments, the dispatchmodule 420 may determine trigger condition in the request. For example,the dispatch module 420 may determine the trigger condition in therequest according to the content contained in the request. In someembodiments, the dispatch module 420 may determine one or more ads basedon the trigger condition and corresponding ads of which determined byprocess 1600. Then the dispatch module 420 may transmit the determinedads to the user terminal for display.

It should be noted that the above description of the process/method forgenerating the one or more ads is provided for the purpose ofillustration, and is not intended to limit the scope of the presentdisclosure. For persons having ordinary skills in the art, multiplevariations and modifications may be made under the teaching of thepresent disclosure. However, those variations and modifications do notdepart from the scope of the present disclosure. For example, operation1602 may be omitted when the obtained advertisement design in 1601 are aplurality of advertisement elements per se.

FIG. 17 is a flowchart illustrating an exemplary process and/or method1700 for determining the number of impressions of an image according tosome embodiments of the present disclosure. The process and/or method1700 may be executed by the online advertisement service system 100. Forexample, the process and/or method 1700 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the processor may accordingly be directed to perform theprocess and/or method 1700. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 17 anddescribed below is not intended to be limiting.

In 1701, the generating unit 410 may generate a plurality of ads. An admay include a plurality of advertisement elements. In some embodiments,an advertisement element may relate to a logo, a product, a model, acopywrite, a button, a background, an ornament, an industryclassification, an industry subclassification, a business name, or thelike, or a combination thereof. Merely by way of example, for an ad of alipstick, the ad may include four advertisement elements relating tologos, products, copywrite, and/or models. The advertisement element mayinclude a plurality of images. It should be noted that an image ismerely a material (also referred to as information component) of theadvertisement element and is not intended to be limiting. Theinformation component may include other suitable forms, for example, atext, a video. For example, for an advertisement element relating toproducts, the advertisement element may include one or more images ofthe products. More particularly, for example, the advertisement elementmay include four images of the products including an image of product A,an image of product B, an image of product C, and an image of product D.

In some embodiments, the generating module 410 may generate theplurality of ads by combining one or more advertisement elements, i.e.,by combining one or more information components (e.g., one or moreimages) included in the one or more advertisements respectively. Forillustration purposes only, a generation of the plurality of ads is usedbelow as an example and is not intended to be limiting. Assume that anad includes four advertisement elements (for example, an advertisementelement relating to products, copywrite, logos, and buttons), theadvertisement element relating to products includes three images (forexample, an image of product A, an image of product B, an image ofproduct C), the advertisement element relating to copywrite includesfour images, the advertisement element relating to logos includes oneimage, and the advertisement element relating to buttons includes oneimage. The generating unit 410 may select one image of the advertisementelement relating to products, copywrite, logos, and buttons respectivelyand generate an ad. For example, the generating unit 410 may select oneof the images of product A, the image of product B, and the product C asan advertisement element to generate the ad. Accordingly, the generatingunit 410 may generate twelve (i.e., 3*4*1*1) ads based on theadvertisement elements relating to products, copywrite, logos, andbuttons.

In some embodiments, the plurality of ads may be generated according tothe process 600, process 700, process 800, process 900, process 1000,process 1200, or a combination of thereof.

In 1702, the dispatch module 420 may dispatch the generated ads to oneor more user terminals. The one or more user terminals may display theads received on one or more channels. The one or more channels refer tomediums displaying the plurality of ads, for example, Facebook, Weibo,and Twitter. In some embodiments, the plurality of ads may be shown atthe user terminals in a given period. The period may be setautomatically by, for example, by the dispatch module 420, or manuallyby a operator of the dispatch module 420. The period may be set fallingin a specific period, for example, from 14:00 p.m. to 18:00 p.m. Theperiod may be one hour, two hours, or any suitable ranges.

In some embodiments, the generated ads may be dispatched to one or moreuser terminals according to the process 1300, process 1400, process1500, process 1600, or a combination thereof.

In 1703, the determination module 430 may determine, for each of theplurality of ads, a click-through rate. The click-through rate of an adused herein refers to a ratio of the number of clicks on the ad to thenumber of impressions of the ad, and the impression refers to a visit bya user terminal to one or more channels displaying the ad.

In some embodiments, the number of clicks and the number of impressionsof each of the plurality of ads may be measured in a pre-determinedperiod. The predetermined period may be set manually by a user orautomatically by, for example, the determination module 430. Thepredetermined period may be set falling in a given period, for example,from 14:00 p.m. to 18:00 p.m. The pre-determined period may be one hour,two hours, one day, one week, one month, or any suitable ranges.

In 1704, the data analysis module 440 may determine, for each of theplurality of ads, a click-through rate of the plurality of advertisementelements and a click-through rate for the plurality of images based onthe click-through rate of each of the plurality of ads. Theclick-through rate of an advertisement element may refer to an averageof click-through rates of information components included in theadvertisement element. For illustration purposes only, assume that anadvertisement element includes four images. The click-through rate ofthe advertisement element may refer to an average of click-through ratesof the four images. The click-through rate of an image may refer to aratio of the total number of clicks of one or more ads including theimage to the total number of impressions of the one or more ads. Forillustration purposes only, for an image, assume that four ads includethe image. The click-through rate of the image may refer to a ratio ofthe number of clicks of the four ads to the number of impressions on thefour ads.

In 1705, the data analysis module 440 may determine a number ofimpressions of at least one of images included in the plurality of adsbased on click-through rates of the plurality of advertisement elements,click-through rates of the images included in the plurality of ads and anumber of impressions of the plurality of ads. The number of impressionsof the plurality of ads may be pre-determined by determined by, forexample, the dispatch module 420 or an operator of the dispatch module420. For example, the dispatch module 420 may determine the number ofimpressions for the ads to be deployed to one or more channels or webpages according to an advertisement campaign, which may be specified bya company or an agency.

In some embodiments, the data analysis module 440 may determine thenumber of impressions of an image based on a ratio of a weight of theimage and a total weight of images included in the plurality of ads andthe number of impressions of the plurality of ads. The weight of theimage used herein refers to a ratio of a click-through rate of the imageto a click-through rate of an advertisement element including the image.In some embodiments, the weight of the image may be determined byEquation (24) below:

$\begin{matrix}{{{{Weight}\mspace{14mu} (n)} = \frac{{Ctr}(n)}{Ctr}},} & (24)\end{matrix}$

where Weight (n) represents a weight of an image, Ctr(n) represents aclick rate of the image, and Ctr represent a click rate of anadvertisement element including the image.

The total weight of images included in the plurality of ads refers tothe sum of the weights of images included in the plurality of ads. Insome embodiments, the total weight of images included in the pluralityof ads may be determined as Equation (25) below:

Weight=Weight(1)+Weight(2), . . . ,+Weight(n)  (25),

where Weight represents a total weight of a plurality of images (e.g.,images included in a plurality of ads displayed on one or morechannels), and Weight(1), Weight(2), . . . , Weight(n) represent aweight of an image respectively.

In some embodiments, the data analysis module 440 may determine thenumber of impressions of the image according to Equation (26) below:

$\begin{matrix}{{{{Impression}\mspace{14mu} (n)} = {X*\frac{{Weight}\mspace{14mu} (n)}{Weight}}},} & (26)\end{matrix}$

where Impression (n) represents an impression of an image, X representsthe number of impressions of the plurality of ads displayed, Weight(n)represents a weight of the image, and Weight represents a total weightof a plurality of images included in the plurality of ads displayed.Merely by way of example, an advertisement element related to productsmay include four images of products (e.g., an image of product A, animage of product B, an image of product C, an image of product D), thenumber of impressions of ads displayed is 1,000,000, the click-throughrate of the image of product A is 1.1%, the click-through rate of theimage of product B is 1.2%, the click-through rate of the image ofproduct C is 1.3%, and the click-through rate of the image of product Dis 1.4%. The data analysis module 440 may determine the click rate ofthe advertisement element as 1.25%, i.e., (1.1%+1.2%+1.3%+1.4%)/4. Theweight of the image of product A, the image of product B, the image ofproduct C, and the image of product D, are 0.8

$\left( {{i.e.},\frac{1.1\%}{1.25\%}} \right),{0.96\left( {{i.e.},\frac{1.2\%}{1.25\%}} \right)},{1.04\left( {{i.e.},\frac{1.3\%}{1.25\%}} \right)},{{and}\mspace{14mu} 1.12\left( {{i.e.},\frac{1.4\%}{1.25\%}} \right)},$

respectively.The total weight of the four images may be 4 (i.e.,0.88+0.96+1.04+1.12). The data analysis module 440 may also determinethe number of impressions of at least one of the four images. Forexample, the number of impressions of the image product A may be1000000*0.88/4, i.e., 220000. Similarly, the number of impressions ofthe image product B may be 240000, the number of impressions of theimage product C may be 260000, and the number of impressions of theimage product D may be 280000. The statistics may be represented intable 3 as below:

TABLE 3 Advertisement Element Click-through Regarding Products (image)Rate Weight Impressions Product A 1.1% 0.88 220000 Product B 1.2% 0.96240000 Product C 1.3% 1.04 260000 Product D 1.4% 1.12 280000 Total 1.25%4 1000000

According to the data collected discussed above regarding theimpressions of advertisement elements and images, the data analysismodule 440 may further generate one or more analysis results. Forexample, the data analysis module 440 may determine that the image ofproduct D is more popular than the images of product A, product B, andproduct C. The image of product D may be determined to have moreimpressions than other images.

It should be noted that the above description of the process/method fordetermining the number of impressions of an image is provided for thepurpose of illustration, and is not intended to limit the scope of thepresent disclosure. For persons having ordinary skills in the art,multiple variations and modifications may be made under the teaching ofthe present disclosure. However, those variations and modifications donot depart from the scope of the present disclosure. For example, thedata analysis module 440 may update the number of impressions of animage dynamically according to a specific period (e.g., one month,fifteen days). As another example, the data analysis module 440 maydetermine more than one numbers of impressions of an image correspondingto different periods and determine an average number of impressions ofthe image.

FIG. 18 is a flowchart illustrating an exemplary process and/or method1800 for generating an analysis result according to some embodiments ofthe present disclosure. The process and/or method 1800 may be executedby the online advertisement service system 100. For example, the processand/or method 1800 may be implemented as a set of instructions (e.g., anapplication) stored in the storage 150. The CPU 220 may execute the setof instructions, and when executing the instructions, the processor mayaccordingly be directed to perform the process and/or method 1800. Theoperations of the illustrated process and/or method presented below areintended to be illustrative. In some embodiments, the process and/ormethod may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the process and/ormethod as illustrated in FIG. 18 and described below is not intended tobe limiting.

In 1801, the generating module 410 may obtain a plurality ofadvertisement elements, each of the plurality of advertisement elementsincluding a plurality of information components. As described elsewherein the disclosure, an advertisement element may relate to a logo, aproduct, a model, a copywrite, a button, a background, an ornament, orthe like, or a combination thereof. An information component may includean image, a text, a video, and the like. Merely by way of example, anadvertisement component relating to products may include at least oneimage of products.

The generating module 410 may obtain the plurality of advertisementelements via the Internet or a storage device (e.g., storage 150,storage 390).

In some embodiments, the generating module 410 may segment one or morepre-existing ads using an image segmentation technique and obtain atleast one advertisement element from the one or more pre-existing ads.The image segmentation may include thresholding techniques, edgedetection techniques, region-growing techniques, histogram-basedtechniques, and/or any image segmentation techniques.

In 1802, the generating module 410 may generate a plurality of ads basedon the plurality of advertisement elements. In some embodiments, thegenerating module 410 may generate the plurality of ads by performingone or more operations as described in step 1701. In some embodiments,the plurality of ads may be generated according to the process 600,process 700, process 800, process 900, process 1000, process 1200, or acombination of thereof.

In 1803, the dispatch module 420 may dispatch the plurality of ads toone or more user terminals. In some embodiments, the dispatch module 420may dispatch the plurality of ads to one or more channels. The one ormore channels may belong to a same or different medium. For example, theone or more channels may include sports channel of Sina and news channelof Sina. The one or more channels may relate to the same theme. Forexample, the one or more channels may include the sports channel ofSina, the sports channel of Sohu, and the like. The number of visits tothe one or more channels may be comparative. In some embodiments, thedispatch module 420 may dispatch the plurality of ads with the sameconditions. For example, the dispatch module 420 may dispatch theplurality of ads in the same time period in the same day. As anotherexample, the dispatch module 420 may dispatch the plurality of ads tothe same channel. Thus, the numbers of clicks on different ads may beeffected mainly by the information components included in the differentads.

In some embodiments, the dispatch module 420 may dispatch the same ad todifferent channels. The dispatch module 420 may dispatch the same ad onthe different channels with the same conditions. Thus, the numbers ofclicks on an ad on displayed on different channels may be effectedmainly by channels. Further, the data analysis module 440 may analyzethe influence of different channels on the click-through rate of ads asdescribed below.

In some embodiments, the generated ads may be dispatched to one or moreuser terminals according to the process 1300, process 1400, process1500, process 1600, or a combination thereof.

In 1804, the determination module 430 may determine the number of clickson each of the plurality of ads and a number of clicks of each ofinformation components included in the plurality of ads. The number ofclicks of an information component may refer to the total number ofclicks of one or more ads including the information component.

In 1805, the data analysis module 440 may determine an average number ofclicks of the information components. In some embodiments, the dataanalysis module 440 may determine the number of clicks of anadvertisement element. The advertisement element may include moreinformation elements than other advertisement element included in theplurality of ads, i.e., the number of information components included inthe advertisement element is greatest. The data analysis module 440 mayfurther determine the average number of clicks of the informationcomponents based on the number of clicks of the advertisement element.The average number of clicks of the information components may refer toa ratio of the number of clicks of the advertisement element to thenumber of information components included in the advertisement element.

In 1806, the data analysis module 440 may determine whether the averagenumber of clicks is greater than a first threshold. The first thresholdmay be set manually by a user, or automatically by, for example, by thedata analysis module 440. In some embodiments, the first threshold maybe set as 300.

In some embodiments, in order to determine whether the average number ofclicks is greater than a first threshold, the data analysis module 440may determine whether the number of clicks of the advertisement elementthat includes the most information components is greater than a secondthreshold. The second threshold may be a multiple of the first thresholdand the number of information components included in the advertisementelement. For illustration purposes, assume that an ad includes fouradvertisement element relating to products, logos, copywrite, andbuttons, the advertisement element relating to products includes fourinformation elements, the advertisement element relating to logosincludes one information elements, the advertisement element relating tocopywrite includes two information elements, the advertisement elementrelating to buttons includes one information elements, and the firstthreshold is 300. In order to determine whether the average number ofclicks is greater than 300, the data analysis module 440 may determinewhether the number of clicks of the advertisement element including mostinformation components is greater than 1200, i.e., 300*4.

In response to the determination that the average number of clicks isnot greater than a threshold, the process 1800 may loop back to 1803 todispatch the plurality of ads for another period. For example, theprocess 1800 may dispatch the plurality of ads for one hour continually.

On the other hand, in response to the determination that the averagenumber of clicks is greater than a threshold, the process 1800 mayproceed to 1807.

In 1807, the data analysis module 440 may analyze the number of clickson each of the plurality of ads and the number of clicks of each of theinformation components to obtain an analysis result. The analysis resultmay include a ranking of the plurality of ads, an analysis of theplurality of information components, an analysis of the one or morechannels, or the like, or the combination thereof. The analysis of theplurality of information components may include a ranking of theplurality of information components.

In some embodiments, the data analysis module 440 may analyze the numberof clicks on each of the plurality of ads to obtain a ranking of theplurality of ads. The data analysis module 440 may further determine themost popular ad among the plurality of ads.

In some embodiments, the data analysis module 440 may analyze the numberof clicks of each of the information components to obtain a ranking ofthe plurality of information components. The data analysis module 440may further determine the most popular information component among theplurality of information components.

In some embodiments, the data analysis module 440 may determine thenumbers of clicks on one or more same ads displayed one differentchannel respectively. Further, the data analysis module 440 may analyzethe numbers of clicks on the one or more same ads to obtain an analysisof the one or more channels. For example, the data analysis module 440may determine a ranking of one or more channels according to numbers ofclicks of the one or more same ads displayed on the one or morechannels. The data analysis module 440 may further determine the mostpopular channel among the one or more channels.

In some embodiments, the data analysis module 440 may analyze thecopywrite included in the plurality of ads. For example, the dataanalysis module 440 may analyze keywords included in the copywrite. Insome embodiments, the generation module may generate new ad templateand/or new ad based, at least in part, on the analysis result. Forexample, the data analysis module 440 may generate an analysis resultfor the first plurality of advertisements. The analysis result mayinclude the click-through rate, the number of impressions, or theconversion rate of the plurality of ads (and/or of the informationcomponent of the first plurality of ads). The generation module 410 maygenerate a plurality of new ads based, at least in part, on a result ofthe analysis of the at least one of the click-through rate, the numberof impressions, or the conversion rate of the first plurality of ads.For example, the generation module 410 may be more likely to select anadvertisement element having a high ranking of the click-through rate(after being updated) among the advertisement elements to be insertedinto a new ad. In some embodiments, the data analysis module 440 mayanalyze the number of impressions of each of the plurality of ads andthe number of impressions of the information components to obtain theanalysis result. The data analysis module 440 may analyze the conversionrate of each of the plurality of ads and the conversion rate of each ofthe information components to obtain the analysis result. The pluralityof ads may be generated according to the process 600, process 700,process 800, process 900, process 1000, process 1100, or a combinationof thereof, but with the updated scores of the ads, informationcomponents, advertisement templates, images, which are determined by thedata analysis module 440 as described elsewhere in this disclosure.

It should be noted that descriptions relating to a number of clicksand/or an average number of clicks above may be used as only an exampleof determining an analysis result. The process 1800 may determine ananalysis result based on any suitable statistics. For example, theprocess 1800 may determine the number of impressions of each of theplurality of ads and a number of impressions of each of informationcomponents included in the plurality of ads. Further, the process 1800may determine an analysis result based on the number of impressions ofeach of the plurality of ads and the number of impressions of each ofinformation components. As another example, the process 1800 maydetermine the number of conversions of each of the plurality of ads anda number of conversions of each of information components included inthe plurality of ads. Further, the process 1800 may determine ananalysis result based on the number of conversions of each of theplurality of ads and the number of conversions of each of informationcomponents. A conversion may refer to act, for example, purchasing aproduct, adding a product to a shopping cart, after clicking an ad. Insome embodiments, the process 1800 may select statistics relating to atleast one of a number of clicks, a number of impressions, and a numberof conversions to determine the analysis result. The selection may beperformed manually by a user, or automatically by, for example, thedetermination module 430.

FIG. 19 is a flowchart illustrating an exemplary process and/or method1900 for ranking a plurality of ads and/or a plurality of informationcomponents according to some embodiments of the present disclosure. Theprocess and/or method 1900 may be executed by the online advertisementservice system 100. For example, the process and/or method 1900 may beimplemented as a set of instructions (e.g., an application) stored inthe storage 150. The CPU 220 may execute the set of instructions, andwhen executing the instructions, the processor may accordingly bedirected to perform the process and/or method 1900. The operations ofthe illustrated process and/or method presented below are intended to beillustrative. In some embodiments, the process and/or method may beaccomplished with one or more additional operations not described,and/or without one or more of the operations discussed. Additionally,the order in which the operations of the process and/or method asillustrated in FIG. 19 and described below is not intended to belimiting.

In 1901, the dispatch module 420 may dispatch a plurality of adsincluding a plurality of advertisement elements, each of the pluralityof advertisement elements including a plurality of informationcomponents. As described elsewhere in the disclosure, the plurality ofads may be generated by the generating module 410 according to one ormore advertisement elements. In some embodiments, the ads to bedispatched may be generated according to the process 600, process 700,process 800, process 900, process 1000, process 1200, or a combinationof thereof. The one or more advertisements may relate to a logo, aproduct, a copywrite, a model, an industry classification, an industrysubclassification, a business name, or the like, or a combinationthereof. An information component may include an image, a text, a video,and the like.

Merely by way of example, the plurality of ads may be generated by thegenerating module 410 according to four advertisement elements, eachrelating to copywrite, products, models, and business names. Theadvertisement element relating to copywrite may include threeinformation components, the advertisement element relating to productsmay include two information components, the advertisement elementrelating to models may include one information components, and theadvertisement element relating to business names may include oneinformation components. Accordingly, the generating module 410 maygenerate six (i.e., 3*2*1*1) ads based on the advertisement elementsrelating to products, copywrite, logos, and buttons.

In 1902, the determination module 420 may determine at least one of aclick-through rate, a number of impressions, or a conversion rate foreach of the plurality of ads. The click-through rate of an ad may referto a ratio of the number of clicks on the ad to the number ofimpressions of the ad. The conversion rate of an ad may refer to a ratioof the number of conversions of the ad to the number of clicks on thead. As described elsewhere in the disclosure, the number of impressionsof an ad, the number of clicks on an ad, and the number of conversionsof an ad may be obtained in a pre-determined period. In someembodiments, the pre-determined period may be one hour.

In 1903, the data analysis module 440 may determine at least one of aclick-through rate, a number of impressions, or a conversion rate foreach of information components included in the plurality of adsaccording to the at least one of the click-through rate, the number ofimpressions or the conversion rate of each of the plurality of ads. Theclick-through rate of an information component may refer to a ratio ofthe total number of clicks of one or more ads including the informationcomponent to the total number of impressions of the one or more ads. Thenumber of impressions of an information component may refer to thenumber of impressions of one or more ads including the informationcomponent. The conversion rate of an information component may refer toa ratio of the total number of conversions of one or more ads includingthe information component to the total number of clicks of the one ormore ads.

For illustration purposes, a determination of click-through rates ofinformation components is used below as merely an example. For brevitypurposes, an information component relating to a copywrite, a product, amodel, a name may be described as a copywrite, a product, a model, aname. Assume that a first ad includes a first copywrite, a firstproduct, a third model, and a second name. A second ad includes thefirst copywrite, a second product, the third model, and a first name. Athird ad includes a second copywrite, the first product, the thirdmodel, and the second name. For each of the three ads, the number ofclicks is one. Accordingly, the data analysis module 440 may determinethat the number of clicks of the first product is 2, i.e., 1+1, thenumber of clicks of the third model is 3, i.e., 1+1+1, etc. Further, thedata analysis module 440 may determine the click-through rate of thefirst product and the third model according to a number of impressionsof the first product and the third model.

In 1904, the data analysis module 440 may rank the plurality of adsand/or the plurality of information components included in the pluralityof ads according to the at least one of the click-through rate, thenumber of impressions, or the conversion rate of each of the pluralityof ads and the at least one of the click-through rate, the number ofimpressions, or the conversion rate of each of the plurality ofinformation components included in the plurality of ads. For example,the data analysis module 440 may determine the ranking of the pluralityof ads based on one of the clicks through rates of the plurality of ads,the numbers of impressions of the plurality of ads, and the conversionrates of the plurality of ads. As another example, the data analysismodule 440 may determine the ranking of the plurality of ads based on atleast one of the click-through rates of the plurality of ads, thenumbers of impressions of the plurality of ads, and the conversion ratesof the plurality of ads. More particularly, the data analysis module 440may assign a weight to each of the at least one of the click-throughrates of the plurality of ads, the numbers of impressions of theplurality of ads, and the conversion rates of the plurality of adsrespectively. Thus, for each of the plurality of ads, the ad may includea weighted click-through rate, a weighted number of impression, and aweighted conversion rate. Further, for each of the plurality of ads, thedata analysis module 440 may determine a sum of the weightedclick-through rate, the weighted number of impression, and the weightedconversion rate. Then the data analysis module may determine the rankingof the plurality of ads based on the sum of each of the plurality ofads.

Similarly, for the plurality of information components, the dataanalysis module 440 may determine the ranking of the plurality ofinformation components based on one of the click-through rates of theplurality of information components, the numbers of impressions of theplurality of information components, and the conversion rates of theplurality of information components. Optionally, the data analysismodule 440 may determine the ranking of the plurality of informationcomponents based on at least one of the click-through rates of theplurality of information components, the numbers of impressions of theplurality of information components, and the conversion rates of theplurality of information components. The data analysis module 440 mayassign a weight to each of the at least one of the click-through ratesof the plurality of information components, the numbers of impressionsof the plurality of information components, and the conversion rates ofthe plurality of information components respectively. Thus, for each ofthe plurality of information components, the information component mayinclude a weighted click-through rate, a weighted number of impression,and a weighted conversion rate. Further, for each of the plurality ofinformation components, the data analysis module 440 may determine a sumof the weighted click-through rate, the weighted number of impression,and the weighted conversion rate. Then the data analysis module maydetermine the ranking of the plurality of information components basedon the sum of each of the plurality of information components. In someembodiments, the weight of an information component and the weight of anad may be the same or different.

To facilitate describing process 1900, an example is used below and isnot intended to be limiting. Assume that an advertisement elementrelating to products includes product 1, product 2, product 3, andproduct 4. An advertisement element relating to logos includes logo 1.An advertisement element relating to copywrite includes copywrite 1,copywrite 2, and copywrite 3. An advertisement element relating tobuttons includes buttons 1. For each of the information components, thedata analysis module 440 may determine a click-through rate, asillustrated in Table 4.

TABLE 4 Advertisement Information Element Component Click-through RateProduct Product 2 1.7% Product 4 1.6% Product 1 1.1% Product 3 0.8%Copywrite Copywrite 3 1.375% Copywrite 1 1.275% Copywrite 2 1.25% LogoLogo 1 1.3% Button Button 1 1.3%

The generating module 410 may generate twelve ads according to theinformation components illustrated in Table 4. For each of the ads, thedata analysis module 440 may determine a click-through rate, asillustrated in Table 5. Further, the data analysis module 440 may rankthe twelve ads according to the click-through rates.

TABLE 5 Click-through Ad Product Copywrite Logo Button Rate Ad 1 Product2 Copywrite 1 Logo 1 Button 1 2.0% Ad 2 Product 4 Copywrite 3 Logo 1Button 1 1.8% Ad 3 Product 2 Copywrite 2 Logo 1 Button 1 1.6% Ad 4Product 4 Copywrite 2 Logo 1 Button 1 1.6% Ad 5 Product 1 Copywrite 3Logo 1 Button 1 1.5% Ad 6 Product 2 Copywrite 1 Logo 1 Button 1 1.5% Ad7 Product 4 Copywrite 3 Logo 1 Button 1 1.4% Ad 8 Product 1 Copywrite 2Logo 1 Button 1 1.0% Ad 9 Product 3 Copywrite 1 Logo 1 Button 1 1.0% Ad10 Product 3 Copywrite 3 Logo 1 Button 1 0.8% Ad 11 Product 1 Copywrite2 Logo 1 Button 1 0.8% Ad 12 Product 3 Copywrite 1 Logo 1 Button 1 0.6%

As illustrated in Table 5, the ad 1 with the greatest click-through ratemay be assigned as the top ranking, and the ad 12 with leastclick-through rate may be assigned as the bottom ranking.

In some embodiments, the data analysis module 440 may determine the mostpopular combination of the information components (i.e. ad 1) accordingto the ranking. In some embodiments, the data analysis module 440 maydetermine a difference between the product 1, the product 2, the product3, and the product 4 is greater than a difference between the Copywrite1, the Copywrite 2, and the Copywrite 3. Further, the data analysismodule 440 may determine the most important factor influencing theclick-through rates of the twelve ads is the advertisement elementrelating to products. If the difference between the product 2 and theproduct 3 is color, the data analysis module 440 may determine the mostimportant factor influencing the click-through rates of products iscolor.

It should be noted that the above description of the process/method forranking a plurality of ads and/or a plurality of information componentsis provided for the purpose of illustration, and is not intended tolimit the scope of the present disclosure. For persons having ordinaryskills in the art, multiple variations and modifications may be madeunder the teaching of the present disclosure. However, those variationsand modifications do not depart from the scope of the presentdisclosure. For example, the data analysis module 440 may determine aclick-through rate, a number of impressions, or a conversion rate foreach of the plurality of advertisement elements. Further, the dataanalysis module 440 may rank the plurality of advertisement elementsaccording to at least one of the click-through rate, the number ofimpressions, or the conversion rate for each of the plurality ofadvertisement element.

FIG. 20 is a flowchart illustrating an exemplary process and/or method2000 for determining a click-through rate of a label of an informationcomponent according to some embodiments of the present disclosure. Theprocess and/or method 2000 may be executed by the online advertisementservice system 100. For example, the process and/or method 2000 may beimplemented as a set of instructions (e.g., an application) stored inthe storage 150. The CPU 220 may execute the set of instructions, andwhen executing the instructions, the processor may accordingly bedirected to perform the process and/or method 2000. The operations ofthe illustrated process and/or method presented below are intended to beillustrative. In some embodiments, the process and/or method may beaccomplished with one or more additional operations not described,and/or without one or more of the operations discussed. Additionally,the order in which the operations of the process and/or method asillustrated in FIG. 20 and described below is not intended to belimiting.

In 2001, the dispatch module 420 may dispatch a plurality of adsincluding a plurality of advertisement elements, each of the pluralityof advertisement elements including a plurality of informationcomponents. For example, an advertisement element relating to logos mayinclude one or more logos of “mineral water.” The one or more loges of“mineral water” may be different in a word front, a word size, a wordcolor, a language, etc. In some embodiments, the dispatch module 420 mayperform one or more operations described in connection with step 1901 inFIG. 19.

In 2002, the determination module 430 may determine a click-through rateof each of the plurality of ads. In some embodiments, the determinationmodule 430 may perform one or more operations described in connect withstep 1703 in FIG. 17.

In 2003, for each of information components included in the plurality ofadvertisement elements, the data analysis module 440 may determine aclick-through rate of the information component according to theclick-through rate of each of the plurality of ads. In some embodiments,the data analysis module 440 may perform one or more operationsdescribed in connect with step 1903 in FIG. 19.

In 2004, the data analysis module 440 may determine a label of at leastone of information components included in the plurality of advertisementelements. In some embodiments, the data analysis module 440 maydetermine the label of an information component according to a positionand a physical attribute of the information component. In someembodiments, details regarding the determination of the label of aninformation component may be found elsewhere in this disclosure (e.g.,in connection with FIG. 21).

In 2005, the data analysis module 440 may determine a click-through rateof the label of the at least one of the information components accordingto the click-through rate of each of the plurality of informationcomponents. The click-through rate of the label of an informationcomponent may refer to an average click-through rate of one or more adsincluding the information component and corresponding to the sameadvertisement template.

In some embodiments, the process 2000 may further include determining alabel in the advertisement element level. In some embodiments, thedetermination of the label in an advertisement element level may beperformed according to the processes 2100 and 2200 illustrated in FIGS.21 and 22.

In some embodiments, the data analysis module 440 may determine aclick-through rate of the label. For example, the data analysis module440 may determine the click-through rate of the label in theadvertisement element level according to click-through rates ofinformation components included in an advertisement element. Theclick-through rate of the label in the advertisement element level mayrefer to an average click-through rate of labels of informationcomponents included in an advertisement element.

The data analysis module 440 may also analyze click-through rates oflabels of information components and click-through rates of labels inthe advertisement element level. In some embodiments, the data analysismodule 440 may determine an influence of a position of the informationcomponent of the click-through rate of the information component and/orclick-through rates of ads including the information component. Forinstance, the data analysis module 440 may determine the influence ofthe position of the information component by comparing a click-throughrate of a first label of the information component and a click-throughrate of a second label of the information component. In someembodiments, the data analysis module 440 may determine an influence ofa relative position of a first information component to that of a secondinformation component according to click-through rates of the ads thatinclude the first information component and the second informationcomponent. The data analysis 440 may compare a click-through rate of afirst label in the advertisement element level and a click-through rateof a second label in the advertisement element level, and determine theinfluence of the relative position of the first information component tothe second information component based on the comparison. The firstlabel in the advertisement element level and the second label in theadvertisement element level may relate to the same informationcomponents, and the positions of the same information components may bedifferent. In some embodiments, the data analysis module 440 maydetermine that an ad having a combination of the first label of a firstinformation component and a second label of a second informationcomponent is more popular, by analyzing click-through rates of labels inthe advertisement level. The labels in the advertisement level mayinclude at least one of the first label of the first informationcomponent and the second label of the second information component.

FIG. 21 is a flowchart illustrating an exemplary process and/or method2100 for generating a label of an information component according tosome embodiments of the present disclosure. The process and/or method2100 may be executed by the online advertisement service system 100. Forexample, the process and/or method 2100 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the processor may accordingly be directed to perform theprocess and/or method 2100. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 21 anddescribed below is not intended to be limiting.

In 2101, the generating module 410 may acquire an identifier of aninformation component. In some embodiments, information components maybe stored in a memory (e.g., the storage 150). In some embodiments, eachinformation component may be encoded and include an identifier.

In 2102, the generating module 410 may determine a physical attribute ofthe information component according to the identifier. Each identifiercorresponds to an information component. The generating module 410 mayobtain the information component according to the identifier of theinformation component. Further, the generating module 410 may identifyand acquire the physical attribute of the information componentautomatically. In some embodiments, the physical attribute of aninformation component may include area ratio, color, quantity, race,gender, package, or the like, or the combination thereof.

For example, the generating module 410 may determine a physicalattribute of logo 1 according to the identifier “123” of the logo 1. Thephysical attribute includes an area ratio below 10%, the blue color. Asanother example, the generating module 410 may determine a physicalattribute of model 1 according to the identifier “456” of the model 1.The physical attribute includes an area ratio of 40%-50%, the pinkcolor, the number of models as 1, a male model, the yellow race. Asstill another example, the generating module 410 may determine aphysical attribute of product 1 according to the identifier “789” of theproduct 1. The physical attribute includes an area ratio of 40%-50%, thenumber of products as 2, a package as a box.

In 2103, the generating module 410 may determine a position of theinformation component in an ad. An ad may correspond to an advertisementtemplate. An advertisement template may include one or more regions.Each region may correspond to an information component. The generatingmodule 410 may determine the position of the information componentaccording to the corresponding region in the advertisement template. Insome embodiments, an advertisement template may be divided into nineregions including a top left region, a top right region, a bottom leftregion, a bottom right region, a middle region, a top region, a bottomregion, a left region, and a right region. For example, the generatingmodule 410 may determine the position of logo 1 in the top left region.As another example, the generating module 410 may determine the positionof model 1 in the left region. As still another example, the generatingmodule 410 may determine the position of product 1 in the right region.

In 2104, the generating module 410 may generate a label of theinformation component based on the physical attribute and the positionof the information component. Due to positions of the same informationcomponent in different ads corresponding to different advertisementtemplates are different, the same information component may correspondto one or more labels. Referring the examples described in steps 2102and 2103, the generating module 410 may generate a label of the logo 1as “position: top left region, area ratio: below 10%, color: blue,” alabel of the model 1 as “position: left region, area ratio: 40%-50%,color: pink, quantity: 1, gender man, race: yellow,” a label of theproduct 1 as “position: right region, area ratio: 40%-50%, quantity: 2,package: box.”

In some embodiments, the step 2104 may further include generating alabel in the advertisement element level. In some embodiments, the labelin the advertisement element level may relate to information componentsincluded in different advertisement elements. Referring the examples insteps 2102 to 2104, if an advertisement element includes the logo 1, themodel 1 and the product 1, the identifier of the advertisement elementis “123, 456, 789,” the label in the advertisement element level is acombination of the label of the logo 1, the label of the model 1, andthe label of the product 1. In some embodiments, the label in theadvertisement element level may relate to information componentsincluded in the same advertisement element (also referred as to a labelof an advertisement element).

In some embodiments, step 2104 of the process 2100 may be performedaccording to an exemplary process illustrated in FIG. 22 for generatingof a label of an advertisement element. The process and/or method 2200may be executed by the online advertisement service system 100. Forexample, the process and/or method 2200 may be implemented as a set ofinstructions (e.g., an application) stored in the storage 150. The CPU220 may execute the set of instructions, and when executing theinstructions, the processor may accordingly be directed to perform theprocess and/or method 2200. The operations of the illustrated processand/or method presented below are intended to be illustrative. In someembodiments, the process and/or method may be accomplished with one ormore additional operations not described, and/or without one or more ofthe operations discussed. Additionally, the order in which theoperations of the process and/or method as illustrated in FIG. 22 anddescribed below is not intended to be limiting.

In 2201, the generating module 410 may generate a label related tophysical attributes of an advertisement element. In some embodiments,the generating module 410 may determine a physical attribute of theadvertisement element using image recognition technologies orinformation technologies. Each physical attribute of an advertisementelement corresponds to a label related to physical attributes. Thecorresponding relationship between a label related to physicalattributes and a physical attribute may be set manually by an operatorof the server 110 and stored in a storage device (e.g., the storage150). The generating module 410 may assign a label related to physicalattributes of the advertisement element according to the correspondingrelationship. The label related to physical attributes may include aposition of an advertisement element, an area ratio of an advertisementelement, a color of an advertisement element, a label of the model, thenumber of lines of a text, a label of the product, or the like, or acombination thereof. The position of an advertisement element refers toits position in an ad and may be determined by the coordinates (e.g., ahorizontal coordinate, a longitudinal coordinate) of pixels of theadvertisement element. The area ratio of an advertisement element refersto an area of the advertisement element to an area of an ad. The colorof an advertisement element refers to a main (or theme) color of theadvertisement element. The label of the model may include a quantity, agender, race, a group a model associated with, a displayed part of themodel, a deflection angle of the model, a product the model takes, etc.The label of the product may include a quantity, a package, etc. In someembodiments, the color, the label of the model, and the label of theproduct may be determined using image recognition technologies.

In 2202, the generating module 410 may generate a label related tocultural attributes, a label related to commercial attributes, and/or alabel related to emotional attributes of the advertisement element. Thelabel related to cultural attributes may relate to culture. For example,the label re cultural attributes may include a design style (e.g.,aestheticism, purity, cool tone, solemnity, high technology), taste(e.g., enthusiasm, glee, melancholy), etc. The label related tocommercial attributes may relate to features of a brand personality, apurpose of a brand promotion, an attribute of the product. The brandpersonality may include the attributes associated with a brand (e.g.,honesty, fashion, sincerity). The brand promotion may include a brandimage campaign, a new release, promotion, free samples, etc. The labelrelated to emotional attributes may refer to an emotion of a person whenseeing an ad, for example, happy, unhappy, desired, and undesired. Thelabel related to cultural attributes, the label related to commercialattributes, or the label related to emotional attributes may be setmanually by a user.

It should be noted that the above description of the process/method forgenerating of a label of an advertisement element is provided for thepurpose of illustration, and is not intended to limit the scope of thepresent disclosure. For persons having ordinary skills in the art,multiple variations and modifications may be made under the teaching ofthe present disclosure. However, those variations and modifications donot depart from the scope of the present disclosure. For example, theprocess 2200 may generate a label related to physical attributes aftergenerating a label related to cultural attributes, a label related tocommercial attributes or a label related to emotional attributes of theadvertisement element. As another example, the process 2200 may furtherinclude generating a label related to physical attributes, a labelrelated to cultural attributes, a label related to commercial attributesor a label related to emotional attributes for a combination of one ormore advertisement elements (e.g., an advertisement element relating tomodels and background).

Having thus described the basic concepts, it may be rather apparent tothose skilled in the art after reading this detailed disclosure that theforegoing detailed disclosure is intended to be presented by way ofexample only and is not limiting. Various alterations, improvements, andmodifications may occur and are intended to those skilled in the art,though not expressly stated herein. These alterations, improvements, andmodifications are intended to be suggested by the present disclosure andare within the spirit and scope of the exemplary embodiments of thepresent disclosure.

Moreover, certain terminology has been used to describe embodiments ofthe present disclosure. For example, the terms “one embodiment,” “anembodiment,” and/or “some embodiments” mean that a particular feature,structure or characteristic described in connection with the embodimentis included in at least one embodiment of the present disclosure.Therefore, it is emphasized and should be appreciated that two or morereferences to “an embodiment,” “one embodiment,” or “an alternativeembodiment” in various portions of this specification are notnecessarily all referring to the same embodiment. Furthermore, theparticular features, structures or characteristics may be combined assuitable in one or more embodiments of the present disclosure.

Further, it will be appreciated by one skilled in the art, aspects ofthe present disclosure may be illustrated and described herein in any ofa number of patentable classes or context including any new and usefulprocess, machine, manufacture, or composition of matter, or any new anduseful improvement thereof. Accordingly, aspects of the presentdisclosure may be implemented entirely hardware, entirely software(including firmware, resident software, micro-code, etc.) or combiningsoftware and hardware implementation that may all generally be referredto herein as a “block,” “module,” “engine,” “unit,” “component,” or“system.” Furthermore, aspects of the present disclosure may take theform of a computer program product embodied in one or more computerreadable media having computer readable program code embodied thereon.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including electro-magnetic, optical, or thelike, or any suitable combination thereof. A computer readable signalmedium may be any computer readable medium that is not a computerreadable storage medium and that may communicate, propagate, ortransport a program for use by or in connection with an instructionexecution system, apparatus, or device. Program code embodied on acomputer readable signal medium may be transmitted using any appropriatemedium, including wireless, wireline, optical fiber cable, RF, or thelike, or any suitable combination of the foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB. NET,Python or the like, conventional procedural programming languages, suchas the “C” programming language, Visual Basic, Fortran 1703, Perl, COBOL1702, PHP, ABAP, dynamic programming languages such as Python, Ruby andGroovy, or other programming languages. The program code may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the users computer and partly ona remote computer or entirely on the remote computer or server. In thelatter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider) or in a cloud computing environment or offered as aservice such as a software as a service (SaaS).

Furthermore, the recited order of processing elements or sequences, orthe use of numbers, letters, or other designations therefore, is notintended to limit the claimed processes and methods to any order exceptas may be specified in the claims. Although the above disclosurediscusses through various examples what is currently considered to be avariety of useful embodiments of the disclosure, it is to be understoodthat such detail is solely for that purpose, and that the appendedclaims are not limited to the disclosed embodiments, but, on thecontrary, are intended to cover modifications and equivalentarrangements that are within the spirit and scope of the disclosedembodiments. For example, although the implementation of variouscomponents described above may be embodied in a hardware device, it mayalso be implemented as a software-only solution—e.g., an installation onan existing server or mobile device.

Similarly, it should be appreciated that in the foregoing description ofembodiments of the present disclosure, various features are sometimesgrouped together in a single embodiment, figure, or description thereoffor the purpose of streamlining the disclosure aiding in theunderstanding of one or more of the various embodiments. This method ofdisclosure, however, is not to be interpreted as reflecting an intentionthat the claimed subject matter requires more features than areexpressly recited in each claim. Rather, claimed subject matter may liein less than all features of a single foregoing disclosed embodiment.

What is claimed is:
 1. A system for automatically generating one or moreads, the system comprising: at least one computer-readable storagemedium including a set of instructions and a plurality of advertisementelements; at least one processor in communication with the at least onecomputer-readable storage medium, wherein when executing the set ofinstructions, the at least one processor is configured to cause thesystem to: receive, by the at least one processor, an ad generationrequest for generating one or more ads, the ad generation requestincluding one or more information components; access, by the at leastone processor, the at least one computer-readable storage medium toobtain one or more advertisement elements for the one or more ads to begenerated based on the ad generation request, each of the one or moreadvertisement elements including at least one information component;determine, by the at least one processor, one or more advertisementtemplates for the one or more ads to be generated based on the adgeneration request, each of the one or more advertisement templatesincluding at least one advertisement region, each of the at leastadvertisement region corresponding to an advertisement element; andautomatically generate, by the at least one processor, the one or moreads by inserting the one or more information components into the one ormore advertisement template.
 2. The system of claim 1, wherein todetermine the one or more advertisement templates, the at least oneprocessor is further configured to cause the system to: determine, bythe at least one processor, one or more size groups based on a pluralityof advertisement slots; obtain, by the at least one processor, one ormore layout templates based on the one or more size groups; obtain, bythe at least one processor, a plurality of advertisement elementsaccording to the one or more layout templates; and determine, by the atleast one processor, the one or more advertisement templates based onthe plurality of advertisement elements and the one or more layouttemplates.
 3. The system of claim 2, wherein the ad generation requestincludes an image as an information component to be generated, and theat least one processor is further configured to cause the system to:determine, by the at least one processor, one or more size scalingratios of the image; determine, by the at least one processor, one ormore spatial compression ratios of the image; and generate, by the atleast one processor, one or more processed images for the image as theinformation component to be generated according to the determined one ormore size scaling ratios and the determined one or more spatialcompression ratios.
 4. The system of claim 2, wherein to determine theone or more advertisement templates based on the plurality ofadvertisement elements and the one or more layout templates, the atleast one processor is further configured to cause the system to: forone layout template of the one or more layout templates, determine, bythe at least one processor, whether a location of an advertisementelement is known in the layout template; in response to thedetermination that the location of the advertisement element is notknown in the layout template, determine, by the at least one processor,a width and a height of an information component corresponding to theadvertisement element in a corresponding advertisement template;determine, by the at least one processor, coordinates of the informationcomponent in the corresponding advertisement template; and determine, bythe at least one processor, the advertisement template based on thewidth, the height and the coordinates of the information component. 5.The system of claim 4, wherein the at least one processor is furtherconfigured to cause the system to: in response to the determination thatthe location of the advertisement element is known in the layouttemplate, determine, by the at least one processor, the advertisementtemplate based on a predetermined typesetting method.
 6. The system ofclaim 1, wherein to determine the one or more advertisement templates,the at least one processor is further configured to cause the system to:determine, by the at least one processor, a demand quantity ofadvertisement templates for generating the one or more ads; determine,by the at least one processor, scores for the advertisement templates;rank, by the at least one processor, the plurality of advertisementtemplates based on the scores; and determine, by the at least oneprocessor, the one or more advertisement templates based on theadvertisement templates, the demand quantity, and the ranking.
 7. Thesystem of claim 1, wherein to automatically generate the one or more adsby inserting the one or more information components into the one or moreadvertisement template, the at least one processor is further configuredto cause the system to: determine, by the at least one processor,whether the ad generation request matches an advertisement element in anadvertisement region of an advertisement template; in response to thedetermination that the ad generation request matches the advertisementelement in the advertisement region of the advertisement template,determine, by the at least one processor, whether a count of informationcomponents in the ad generation request equals to a predetermined numberof information components in the advertisement region; and in responseto the determination that the count of information components in the adgeneration request equals to the predetermined number of informationcomponents for the advertisement region of the advertisement template,insert, by the at least one processor, the information components fromthe ad generation request into the advertisement region.
 8. The systemof claim 7, wherein the at least one processor is further configured tocause the system to: in response to the determination that the count ofinformation components in the ad generation request does not equal tothe predetermined number of information components for the advertisementregion of the advertisement template, determine, by the at least oneprocessor, the predetermined number of information components based onthe ad generation request; and insert, by the at least one processor,the predetermined number of information components into theadvertisement region.
 9. The system of claim 7, wherein the at least oneprocessor is further configured to cause the system to: in response tothe determination that the ad generation request does not match theadvertisement element in the advertisement region of the advertisementtemplate, insert, by the at least one processor, the predeterminednumber of information components from the at least one computer-readablestorage medium into the advertisement region.
 10. The system of claim 1,wherein the one or more advertisement elements include at least one of acompany logo, a company name, industry, a product, a model, a copywrite,a trademark, or a celebrity.
 11. The system of claim 1, wherein the oneor more information components include at least one of an image, a word,a phrase, a sentence, a video, or an audio.
 12. A method forautomatically generating one or more ads, implemented on a system thatincludes at least one processor and at least one computer-readablestorage medium including a set of instructions and a plurality ofadvertisement elements, the method comprising: receiving, by the atleast one processor, an ad generation request for generating one or moreads, the ad generation request including one or more informationcomponents; accessing, by the at least one processor, the at least onecomputer-readable storage medium to obtain one or more advertisementelements for the one or more ads to be generated based on the adgeneration request, each of the one or more advertisement elementsincluding at least one information component; determining, by the atleast one processor, one or more advertisement templates for the one ormore ads to be generated based on the ad generation request, each of theone or more advertisement templates including at least one advertisementregion, each of the at least advertisement region corresponding to anadvertisement element; and automatically generating, by the at least oneprocessor, the one or more ads by inserting the one or more informationcomponents into the one or more advertisement template.
 13. The methodof claim 12, wherein the determining the one or more advertisementtemplates includes: determining, by the at least one processor, one ormore size groups based on a plurality of advertisement slots; obtaining,by the at least one processor, one or more layout templates based on theone or more size groups; obtaining, by the at least one processor, aplurality of advertisement elements according to the one or more layouttemplates; and determining, by the at least one processor, the one ormore advertisement templates based on the plurality of advertisementelements and the one or more layout templates.
 14. The method of claim13, wherein the ad generation request includes an image as aninformation component to be generated, and the method further comprises:determining, by the at least one processor, one or more size scalingratios of the image; determining, by the at least one processor, one ormore spatial compression ratios of the image; and generating, by the atleast one processor, one or more processed images for the image as theinformation component to be generated according to the determined one ormore size scaling ratios and the determined one or more spatialcompression ratios.
 15. The method of claim 13, wherein the determiningthe one or more advertisement templates based on the plurality ofadvertisement elements and the one or more layout templates includes:for one layout template of the one or more layout templates,determining, by the at least one processor, whether a location of anadvertisement element is known in the layout template; in response tothe determination that the location of the advertisement element is notknown in the layout template, determining, by the at least oneprocessor, a width and a height of an information componentcorresponding to the advertisement element in a correspondingadvertisement template; determining, by the at least one processor,coordinates of the information component in the correspondingadvertisement template; and determining, by the at least one processor,the advertisement template based on the width, the height and thecoordinates of the information component.
 16. The method of claim 15,further comprising: in response to the determination that the locationof the advertisement element is known in the layout template,determining, by the at least one processor, the advertisement templatebased on a predetermined typesetting method.
 17. The method of claim 12,wherein the determining the one or more advertisement templatesincludes: determining, by the at least one processor, a demand quantityof advertisement templates for generating the one or more ads;determining, by the at least one processor, scores for the advertisementtemplates; ranking, by the at least one processor, the plurality ofadvertisement templates based on the scores; and determining, by the atleast one processor, the one or more advertisement templates based onthe advertisement templates, the demand quantity, and the ranking. 18.The method of claim 12, wherein the automatically generating the one ormore ads by inserting the one or more information components into theone or more advertisement template includes: determining, by the atleast one processor, whether the ad generation request matches anadvertisement element in an advertisement region of an advertisementtemplate; in response to the determination that the ad generationrequest matches the advertisement element in the advertisement region ofthe advertisement template, determining, by the at least one processor,whether a count of information components in the ad generation requestequals to a predetermined number of information components in theadvertisement region; and in response to the determination that thecount of information components in the ad generation request equals tothe predetermined number of information components for the advertisementregion of the advertisement template, inserting, by the at least oneprocessor, the information components from the ad generation requestinto the advertisement region.
 19. The method of claim 18, furthercomprising: in response to the determination that the count ofinformation components in the ad generation request does not equal tothe predetermined number of information components for the advertisementregion of the advertisement template, determining, by the at least oneprocessor, the predetermined number of information components based onthe ad generation request; and inserting, by the at least one processor,the predetermined number of information components into theadvertisement region.
 20. A non-transitory computer readable mediumembodying a computer program product, the computer program productcomprising instructions configured to cause a computing device to:receive, by the computing device, an ad generation request forgenerating one or more ads, the ad generation request including one ormore information components; access, by the computing device, a databaseto obtain one or more advertisement elements for the one or more ads tobe generated based on the ad generation request, each of the one or moreadvertisement elements including at least one information component;determine, by the computing device, one or more advertisement templatesfor the one or more ads to be generated based on the ad generationrequest, each of the one or more advertisement templates including atleast one advertisement region, each of the at least advertisementregion corresponding to an advertisement element; and automaticallygenerate, by the computing device, the one or more ads by inserting theone or more information components into the one or more advertisementtemplate.